在选择查询中选择MYSQL

您好!我有一个需要输出屏幕数据的查询。
每个屏幕有4个展位可供展示。我需要一个查询有一个结果(因为我只有一个屏幕),并有4个展位(怎么我分配的4个展位)在选择查询中选择MYSQL

这里是我的查询:

$result = DB::select(" 

SELECT

`A`.`scr_name`,

`A`.`mission_id`,

`B`.`booth_id`,

`E`.`name`

FROM `tbl_screen` `A`

LEFT JOIN

`tbl_screen_booths` `B`

ON `B`.`screen_id` = `A`.`id`

LEFT JOIN

`tbl_service_booths` `C`

ON `B`.`booth_id` = `C`.`id`

LEFT JOIN

`tbl_missions_services` `D`

ON `C`.`mission_services_id` = `D`.`id`

LEFT JOIN

`tbl_services` `E`

ON `D`.`service_id` = `E`.`id`

WHERE `A`.`mission_id` = $mission_id

GROUP BY

`B`.`booth_id`;

");

return $result;

我想是这样这样的:

"scr_name": "Test Screen", 

"mission_id": 2,

"name": "booth1", //index[0]

"name": "booth2", //index[1]

"name": "booth3", //index[2]

"name": "booth4" //index[4]

我的查询返回的是这样的:

[ 

{

"scr_name": "Test Screen",

"mission_id": 2,

"booth_id": 7,

"name": "booth1"

},

{

"scr_name": "Test Screen",

"mission_id": 2,

"booth_id": 9,

"name": "booth2"

},

{

"scr_name": "Test Screen",

"mission_id": 2,

"booth_id": 10,

"name": "booth3"

},

{

"scr_name": "Test Screen",

"mission_id": 2,

"booth_id": 11,

"name": "booth4"

}

]

回答:

结果还好..只是需要一点点迭代来获取值..

$data['scr_name'] = $result[0]->scr_name; 

$data['mission_id'] = $result[0]-> mission_id;

foreach($result as $index => $item) {

$data['name'.($index+1)] => $item->name;

}

结果:

"scr_name": "Test Screen", 

"mission_id": 2,

"name1": "booth1", //index[0]

"name2": "booth2", //index[1]

"name3": "booth3", //index[2]

"name4": "booth4" //index[4]

数组键不能有相同的键名

以上是 在选择查询中选择MYSQL 的全部内容, 来源链接: utcz.com/qa/259620.html

回到顶部