Php 使用组_CONCAT时出错?
我有一个样本数据Php 使用组_CONCAT时出错?,php,mysql,Php,Mysql,我有一个样本数据 mobile(id, name) mobile(1, 'Nokia') mobile(2, 'Samsung') mobile(3, 'Motorola') 和类别 categories(id, name, mobile_id) categories(1, 'mobile', '1,2,3') 和mysql: SELECT cat.name as cat_name, GROUP_CONCAT(mobile.name) as mobile_name FROM `mobile`
mobile(id, name)
mobile(1, 'Nokia')
mobile(2, 'Samsung')
mobile(3, 'Motorola')
和类别
categories(id, name, mobile_id)
categories(1, 'mobile', '1,2,3')
和mysql:
SELECT cat.name as cat_name, GROUP_CONCAT(mobile.name) as mobile_name
FROM `mobile` as mobile
LEFT OUTER JOIN `categories` AS cat ON cat.mobile_id = mobile.id
如何获得此结果:
(1,"mobile","Nokia,Samsung,Motorola")
你应该尝试添加
GROUP cat.name
在查询结束时您需要添加
按类别id分组
由于
GROUP\u CONCAT
是一个GROUP BY(Aggregate)函数
您应该创建一个新的表“mobiles\u categories”,将手机与各自的类别相耦合,如下所示:
mobile\u类别
- id_类别-id_手机
- 1-1
- 1-2
- 1-3
- 2-1
- 2-2