gpt4 book ai didi

mysql - 如何在单个字段或列中连接多个值? (MySQL)

转载 作者:可可西里 更新时间:2023-11-01 08:47:12 26 4
gpt4 key购买 nike

我在 MySQL 中有一张表需要分组。我正在检索包含多个商品的销售订单

我当前的数据库查询如下所示: enter image description here

如您所见,销售订单255 购买了 2 件商品,而销售订单300 购买了 3 件商品

问题:我需要在 line_items 字段或列中根据它们的 order_id连接所有 product_id 及其价格

我想要的输出是这样的: enter image description here

这是我使用的查询:

SELECT bsb.ORDER_ID AS order_id, bsb.PRODUCT_ID AS product_id, bsb.PRICE AS   product_price, '' AS line_items
FROM bsb
INNER JOIN bso ON bso.ID = bsb. ORDER_ID
WHERE bsb.ORDER_ID in(255, 300)

请帮助我...

最佳答案

您可以在 GROUP_CONCAT 中使用 CONCAT 来获得您想要的结果集,但请记住 GROUP_CONCAT 有一个默认的 1024 个字符来连接但可以通过关注GROUP_CONCAT来增加手册

SELECT bsb.ORDER_ID AS order_id, 
GROUP_CONCAT(CONCAT('product_id: ',bsb.PRODUCT_ID,' | ',bsb.PRICE) SEPARATOR ';') AS line_items
FROM bsb
INNER JOIN bso ON bso.ID = bsb. ORDER_ID
WHERE bsb.ORDER_ID in(255, 300)
GROUP BY bsb.ORDER_ID

关于mysql - 如何在单个字段或列中连接多个值? (MySQL),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25398668/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com