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