Vehicles(Id、VIN)とImages(Id、VehicleId、Name、Default)の2つのテーブルがあります。テーブルに表示する車両のVINとそのデフォルトの画像を選択する必要があります。私が抱えている問題は、デフォルトの画像が設定されていない場合でも、表示する画像が存在する場合はそれを選択したいということです。画像が存在しない場合でも、車両情報も表示する必要があります。これが私がこれまでに持っているものです:
SELECT
Vehicles.Id, Vehicles.VIN, Images.Name AS Image,
(SELECT COUNT(*) FROM Images WHERE VehicleId = Vehicles.Id) AS ImageCount
FROM
Vehicles
LEFT JOIN
Images ON Images.VehicleId = Vehicles.Id
WHERE
Images.Default = 1
このステートメントは、デフォルトの画像がある車両を表示しますが、デフォルトが設定されていない場合は何も表示しません。何を変更する必要がありますか?
編集*
私の問題をよりよく説明するために、ここにいくつかのテストデータがあります:
VEHICLES:
ID VIN
1 12341234123412341
2 23452345234523452
3 34534534534534534
IMAGES:
ID VEHICLEID NAME DEFAULT
1 1 a 1
2 1 b 0
3 2 c 0
4 2 d 0
車両2にはデフォルトがありませんが、表示する画像を選択してほしいです。また、車両3には画像がまったくありませんが、画像なしでテーブルに表示する必要があります。車両1は設定されているため、デフォルトの画像が表示されます。これで問題が解決することを願っています。