У меня есть две таблицы, таблица vehicle
со столбцами:
id
stock
year
make
model
и таблица images
со столбцами:
id
vehicle_id
name
caption
default tinyint(1)
Я пытаюсь перечислить информацию о транспортном средстве, его изображение по умолчанию и общее количество изображений, которые есть у транспортного средства. В настоящее время я использую следующий оператор SELECT
:
SELECT vehicle.id, vehicle.stock, vehicle.year,
vehicle.make, vehicle.model, images.name,
COUNT(images.id)
FROM vehicle
LEFT JOIN images
ON vehicle.id = images.vehicle_id
Я изначально использовал:
ON vehicle.id = images.vehicle_id AND images.default = 1
но тогда количество изображений будет только 1 или 0 в зависимости от того, есть ли в базе данных изображение по умолчанию. Я пытался использовать UNION
и другие операторы SELECT
, но все еще не могу получить правильный результат. Нужно ли мне использовать два оператора SELECT
или есть другой способ справиться с этим с помощью JOIN
или UNION
?