所以我有两张桌子:
产品 ID 名称
product_variants ID PRODUCT_ID 名称 条形码
我想选择所有带有一个查询的产品,其中一个字段包含相关变量的数量,另一个字段包含所有相关的条形码(按空格分隔)。
所以例如这个输出:
product_id product_name product_variant_count product_variant_barcodes
1 Product 1 3 1234567890 0987654321 5432109876
2 Product 2 1 6789054321
3 Product 3 2 1234509876 3456781290
这可能吗?
答案 0 :(得分:1)
正如评论GROUP_CONCAT
中提到的那样,这是完美的。
从产品中选择并加入product_variants:
SELECT p.id, p.name, COUNT(pr.id) AS product_variant_count,
GROUP_CONCAT(pr.barcode SEPARATOR ' ') AS product_variant_barcodes
FROM products p
LEFT JOIN product_variants pr ON (p.id = pr.product_id)
GROUP BY p.id