2016-05-22 12 views
0

コーチ表:コーチの可用性を確認する

enter image description here

ツアー表:

enter image description here

私が立ち往生している
与えられた日付に利用できるコーチの一覧を表示するクエリを作成します。このクエリでは、どのように進行するかわかりません:

SELECT 
    c.coachID, 
    c.coachNo 
FROM 
    Tour t 
    inner join Coach c 
     on t.coachID=c.coachID 
WHERE 
    '10/01/2016' BETWEEN startDate AND (DATEADD(DAY,tourDuration,startDate)) 

出力:

coachID|coachNo 
1  |WKS5623 
+0

あなたが試したことを見せてください。 –

+0

特定の日付に利用可能なコーチIDとコーチ番号を表示したいと思っています – Cylex

答えて

1

我々は

  1. 今ツアー中であるコーチ

    を見つける

    SELECT DISTINCT CoachID FROM Tour WHERE '10/01/2016' BETWEEN startDate AND (DATEADD(DAY, tourDuration, startDate))

  2. がそれらを取得し、次のように利用できるコーチを得ることができますコーチのリストにないコーチは今ツアー中です

    SELECT CoachId, CoachNo FROM Coach WHERE CoachId NOT IN ( SELECT DISTINCT CoachID FROM Tour WHERE '10/01/2016' BETWEEN startDate AND (DATEADD(DAY, tourDuration, startDate)) )

それはあなたのお役に立てば幸いです。

+0

ありがとう、それは完璧に動作します – Cylex

関連する問題