mysql - SQL 在选择中进行选择

标签 mysql

我需要有关 SQL 中复杂 select 语句的帮助。我这里有这两个表:

表用户:

enter image description here

表 contact_from_user:

enter image description here

当我做出选择时

SELECT name, vorname, gebdat, bezeichnung, wert 
FROM user 
    JOIN contacts ON u_id = user_u_id

我为一个用户获得多行,因为他有多个联系选项,但我需要将其放在一行中:

enter image description here

该行应如下所示:

name, vorname, gebdat, bezeichung_1, wert_1, bezeichnung_2, wert_2.......

我该怎么做?

非常感谢!

最佳答案

在伪代码中,处理此类场景的最佳方法是:

query = SELECT A.ID, A.stuff, B.stuff FROM A JOIN B ON A.ID = B.A_ID
results = run query
prev_A_ID = impossible_A_ID
for each result
  if prev_A_ID not equal result_A_ID
      create new A and set as current A
  add B.stuff to current A
  set prev_A_ID to result_A_ID
end for

关于mysql - SQL 在选择中进行选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42402373/

相关文章:

php - 显示 mysql 表中的多个下拉选项

c# - DataReader 对象引用未设置错误

PHP将空白插入MySQL数据库

mysql - 如何在类似于 MS SQL Server 的 MySQL 中分解列名?

mysql - 从mysql获取满足条件的行数以及1次查询中的最大值

php - PHP/MySQL自动对付垃圾邮件发送者有哪些方法

php - 从 PHP 表的列中检索选定的值

mysql - MySQL 中的最大值 (x,y)

mysql - 如何连接Mysql和logstash?

php - 从数据库中裁剪值