0

指定した とで旅行を保存するtripsという名前のテーブルがあります。車両は車両テーブルに保存されます。特定の日付に利用可能なすべての車両を照会して、車両が特定の旅行に選択された場合、それが戻るまで別の旅行に再び使用できないようにする必要があります。 私のテーブル構造はこのようなものですdeparture_datereturn_date

表:旅行

id
vehicle_id
departure_date
return_date

表:乗り物

id  
plate_no

次のコマンドを使用してクエリを実行しようとしましたが、うまくいかないようです:

select v.id from vehicles as v
where v.id not in
    (select vehicle_id from trips
     where (departure_date between '2012-10-31 10:41:30' AND '2012-11-06 10:41:38'))
4

1 に答える 1

1

これを試して::

select 
v.id 
from 
vehicles as v 
left join trips t on (v.id=t.vehicle_id)
where 
t.departure_date between '2012-10-31 10:41:30' AND '2012-11-06 10:41:38' 
and t.id is null
于 2012-11-30T19:02:04.100 に答える