我在查询 cakephp3.x 时遇到问题。我想要返回数据,例如project_id返回project_id内的列表名称, 但project_id是唯一的。不重复的project_id。 抱歉我的英语。请帮忙。
$result = $query->find('all', [
'fields' => [
'project_id' => 't_project_member.project_id',
'project_name' => 't_project.name',
'member_name' => 'concat(t_member.first_name," ",t_member.last_name)'
],
'join' => [
['table' => 't_project',
'type' => 'LEFT',
'conditions' => 't_project.id = t_project_member.project_id'],
['table' => 't_member',
'type' => 'LEFT',
'conditions' => 't_member.id = t_project_member.member_id'],
],
'conditions' => ['t_project.id' => $project_id]
]);
结果:
{
"result": [
{
"project_id": 4,
"project_name": "Ueno Rebrand : Business cards #1",
"member_name": "User_3 c"
},
{
"project_id": 4,
"project_name": "Ueno Rebrand : Business cards #1",
"member_name": "User_4 d"
},
{
"project_id": 4,
"project_name": "Ueno Rebrand : Business cards #1",
"member_name": "User_5 e"
},
]
}
我想要返回如下数据。
{
"result": [
{
"project_id": 4,
"project_name": "Ueno Rebrand : Business cards #1",
"member_name": {
"User_3 c",
"User_4 d",
"User_5 e
}
},
]
}
非常感谢。
最佳答案
$result = $query->find('all', [
'fields' => [
'project_id' => 't_project_member.project_id',
'project_name' => 't_project.name',
'member_name' => 'concat(t_member.first_name," ",t_member.last_name)'
],
'join' => [
['table' => 't_project',
'type' => 'LEFT',
'conditions' => 't_project.id = t_project_member.project_id'],
['table' => 't_member',
'type' => 'LEFT',
'conditions' => 't_member.id = t_project_member.member_id'],
],
'group' => '`t_project_member`.`project_id`',
'conditions' => ['t_project.id' => $project_id]
]);
关于php - 在cakephp 3中查询获取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39607017/