Php GROUPBY子句忽略行和数据
正如我们所知,Php GROUPBY子句忽略行和数据,php,mysql,Php,Mysql,正如我们所知,groupby子句通过指定特定的groupby'user\u id'来忽略重复数据来返回数据,但我想这样做groupby忽略表行,但我想将该行的数据合并到数组中,这意味着我需要除过滤行之外的所有数据 我想做点什么 id | name | user_id ------------------- 1 abc 20 2 trt 19 3 sdf 20 4 khg 22 5 fdf 20 6 lnm 22
groupby
子句通过指定特定的groupby'user\u id'
来忽略重复数据来返回数据,但我想这样做groupby
忽略表行,但我想将该行的数据合并到数组中,这意味着我需要除过滤行之外的所有数据
我想做点什么
id | name | user_id
-------------------
1 abc 20
2 trt 19
3 sdf 20
4 khg 22
5 fdf 20
6 lnm 22
id | name | user_id
-------------------
1 abc,sdf,fdf 20
2 trt 19
3 khg,lnm 22
请尝试此查询
Select id, GROUP_CONCAT(name), user_id FROM table_name GROUP BY user_id
我使用了group_concat作为名称列。为此使用
group_concat
。请尝试此查询-
SELECT id, GROUP_CONCAT(name) name, user_id FROM students GROUP BY user_id
GROUP_CONCAT函数使用各种选项将组中的字符串连接成一个字符串
更新
要在CakePhp中实现它-
$driverlocation_data = $this->DriverLocation->find(
'all',
array(
'conditions'=>array('DriverLocation.dispensary_id'=>$dispensary_id),
'fields' => array('id', 'GROUP_CONCAT(name) name', 'user_id')
'group'=>array('DriverLocation.driver_id')
)
);
查询、表结构和工作在哪里?提供示例数据以及问题的预期结果。我使用的是cakephp$driverlocation_data=$this->driverlocation->find('all',array('conditions'=>array('driverlocation.disposary_id'=>$disposary_id),'group'=>array('driverlocation.driver_id');我更新了我的问题。请检查一下,你能告诉我如何用cakephp获取组_CONCAT吗?当前查询$driverlocation\u data=$this->driverlocation->find('all',array('conditions'=>array('driverlocation.disposary\u id'=>$disposary\u id),'group'=>array('driverlocation.driver\u id');只需在选项中定义字段数组并设置字段。我没有理解你的意思,你能帮我写一些代码吗。??