繁体   English   中英

将具有多行的表联接到一行

[英]Join table with multiple rows to one row

我有一个数据库,看起来像:

TABLE 1
ID | NAME | PRICE

TABLE 2
TABLE1.ID | ITEM

如您所见,表2可能包含对表1的多个引用。

是否可以创建给出这样结果的查询?

TABLE1.ID | NAME | PRICE | TABLE2.ITEM REC 1 |  TABLE2.ITEM REC 2 |  TABLE2.ITEM REC 3

考虑查看以下MySQL函数: GROUP_CONCAT(expr) 它一定会回答您的问题

MySQL文档-group_concat()

试试这个:

SELECT t1.*, GROUP_CONCAT(t2.ITEM) AS Items
FROM Table1 t1 
JOIN Table2 t2
  ON t1.ID = t2.TABLE1_ID
GROUP BY t1.ID

看到这个SQLFiddle

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM