繁体   English   中英

SQL:将相关表中的所有数据添加到列中

[英]SQL: Add all data from related table to a column

我有两个简单的表:

发票:
身份证日期...
1 1/1/2011
2011年2月2日

发票_产品:
发票编号productId数量
1 101 1000
1200 50
1310125
2 101 2000
2222 1000

我想要一个选择查询,其结果如下:

invoiceId日期总和
1 2011年1月1日101,200,310
2011年2月2日101,222

我的问题是如何将选择查询的结果添加到invoice_Products表中以逗号分隔的单列中。

谁能帮我?

提前致谢...

您正在寻找GROUP_CONCAT()函数。 像这样:

SELECT  Invoice_Products.invoiceId,
        Invoices.Date,
        GROUP_CONCAT(Invoice_Products.productId) AS productIds
  FROM Invoice_Products
  JOIN Invoices ON Invoice_Products.invoiceId = Invoices.ID
 GROUP BY invoiceId
;

在这里查看结果。

尝试这个。

SELECT invoiceID,DATE_FORMAT(now(),'%m/%d/%Y') as `DATE`,GROUP_CONCAT(PRODUCTID) as `sumProducts`
  FROM invoice_products
 GROUP BY invoiceID;

暂无
暂无

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

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