我的 MySQL 查询是:
SELECT products_id, options_id, options_values_id FROM products_options po, products_attributes pa WHERE pa.options_id=po.products_options_id AND po.products_options_name LIKE '%Velikost%' AND po.language_id=7 group by products_id, options_values_id
它给出输出:
products_id options_id options_values_id
3 3501 13227
3 3501 13230
4 3501 13226
4 3501 13227
4 3501 13230
4 3501 13231
5 3501 13226
5 3501 13227
5 3501 13230
5 3501 13231
6 3501 13226
6 3501 13227
6 3501 13230
6 3501 13231
现在我希望有这样的输出:
3 3501 '13227, 13230'
4 3501 '13226, 13227, 13230, 13231'
5 3501 '13226, 13227, 13230, 13231'
6 3501 '13226, 13227, 13230, 13231'
我正在尝试使用 group_concat 进行查询
SELECT products_id, options_id, group_concat( options_values_id )
FROM products_options po, products_attributes pa
WHERE pa.options_id = po.products_options_id
AND po.products_options_name LIKE '%Velikost%'
AND po.language_id =7
GROUP BY products_id, options_values_id
但它返回:
products_id options_id group_concat(options_values_id)
3 3501 13227,13227,13227
3 3501 13230,13230,13230
4 3501 13226,13226,13226
4 3501 13227,13227,13227
4 3501 13230,13230,13230
4 3501 13231,13231,13231
5 3501 13226,13226,13226
5 3501 13227,13227,13227
5 3501 13230,13230,13230
5 3501 13231,13231,13231
6 3501 13226,13226,13226
6 3501 13227,13227,13227
6 3501 13230,13230,13230
6 3501 13231,13231,13231
你能告诉我我做错了什么吗? 谢谢
最佳答案
试试这个。
SELECT products_id, options_id, group_concat( options_values_id )
FROM products_options po, products_attributes pa
WHERE pa.options_id = po.products_options_id
AND po.products_options_name LIKE '%Velikost%'
AND po.language_id =7
GROUP BY products_id,options_id;
关于mysql - group_concat Mysql 如何在一个查询中选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37577573/