У меня есть две таблицы, vehicle
таблица со столбцами:
и 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
?