Дан следующий запрос MySQL:
SELECT
`show`.`id`
, GROUP_CONCAT( `showClips`.`clipId` ORDER BY `position` ASC ) AS 'playlist'
FROM
`show`
INNER JOIN
`showClips`
ON
( `show`.`id` = `showClips`.`showId` )
;
Я хочу получить список всех "шоу" из базы данных, включая идентификаторы содержащихся "клипов".
Это работает нормально, пока есть записи в таблице show
. Для решения этой задачи предположим, что все таблицы полностью пусты.
GROUP_CONCAT
вернет NULL
и таким образом заставит строку попасть в результат (который содержит только NULL
значения).
После этого мое приложение будет считать, что существует одно шоу/результат. Но этот результат будет недействительным. Это, конечно, можно проверить, но мне кажется, что это можно (и нужно) предотвратить уже в запросе.