1
안녕하세요! 화면 데이터를 출력해야하는 쿼리가 있습니다.
각 화면에는 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;
내가 뭔가를 원하는 : (난 그냥 하나 개의 화면을 가지고 있기 때문에) 그리고 (나는 4 개 부스를 할당 사촌)
다음내 쿼리의 IT 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"
}
]
: "scr_name": "Test Screen",
"mission_id": 2,
"name": "booth1", //index[0]
"name": "booth2", //index[1]
"name": "booth3", //index[2]
"name": "booth4" //index[4]
내 쿼리는 다음과 같이 반환 6,
이 속임수, 고마워! –
그러나 여러 개의 결과가 반환되므로 여러 개의 화면이있는 경우 적합하지 않습니다. –
다음 데이터를 반복해야합니다 .. 몇 가지 로직을 넣어 .. 출력을 생산 .. 이것은 귀하의 데이터에서 단지 샘플입니다 – ZeroOne