簡體   English   中英

返回具有多行的group_concat

[英]Return group_concat with multiple rows

我有一個orderLine表,其中訂單附加到產品。 因此,我的orderLine表可以如下所示:

orderID耦合到orderLineId作為外鍵。

orderID   productID
1         2
2         1
2         2

我的order表是這樣的:

orderLineId      userID
1                 1
1                 1
2                 1

但是,如果我執行GROUP_CONCAT查詢:

SELECT orderLine.orderId,
       GROUP_CONCAT(orderLine.productId)
FROM orders
  INNER JOIN orderLine ON orders.orderLineId = orderLine.orderId
WHERE orders.orderId = 1

我得到結果:

orderId, GROUP_CONCAT(orderLine.productId)
1       1,2,2

但我想擁有:

orderId, GROUP_CONCAT(orderLine.productId)
1       1,2
2       2

您需要GROUP BY orderLine.orderId才能為每個orderId獲得一行:

SELECT orderLine.orderId,
       GROUP_CONCAT(orderLine.productId)
FROM orders
  INNER JOIN orderLine ON orders.orderLineId = orderLine.orderId
WHERE orders.orderId = 1
GROUP BY orderLine.orderId

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM