私はクエリを作成して重複がないようにしたいが、私は何回か3回重複してしまい、DISTINCTまたはDISTINCTROWを使用したときは2つしか重複しない。私はINNER JOINを使用したときに、私はすべてのフライトや遅れたりキャンセルされてしまった便だけでなく、見てみたかったので、私は私が見せたかった事のいくつかを逃したので重複した結果のないSQLクエリにアクセスする
SELECT f.flight_code,
f.status,
a.airport_name,
a1.airport_name,
f.departing_date+f.departing_time AS SupposedDepartingTime,
f.landing_date+f.landing_time AS SupposedLandingTime,
de.actual_takeoff_date+de.actual_takeoff_time AS ActualDepartingTime,
SupposedLandingTime+(ActualDepartingTime-SupposedDepartingTime) AS ActualLandingTime
FROM
(((Flights AS f
LEFT JOIN Aireports AS a
ON a.airport_code = f.depart_ap)
LEFT JOIN Aireports AS a1
ON f.target_ap = a1.airport_code)
LEFT JOIN Irregular_Events AS ie
ON f.flight_code = ie.flight_code)
LEFT JOIN Delay_Event AS de
ON ie.IE_code = de.delay_code;
はJOINをLEFTを使用する必要がありました。
これはINNER JOINを使用した場合の結果で、「ביטול」または「עיכוב」のステータスを持つフライトのみが表示されます。
the results with LEFT JOIN とするとき、あなたはそれが表示される最初の列のNUMBER 6と行を参照してください。ここで、iは2回だけ
重要DISTINCTを使用! 私は自分のクエリとそこに使用するすべてのテーブルをチェックして、私は自分の問題を見ましたが、それを修正する方法は分かりません! テーブル内Irregular_Events
私はフライト3,6,8のイベントが1つ多いので、LEFT JOINを使用すると、私はさらに別のものを見ることができます。私には何か助けてください!
使用'SELECT DISTINCT'。 –
あなたは読んでくださいできませんか?私はそれを使用して書いたが、それは良いwasnt。 だから、もし私が次の時間に答える前に読んだリースのコードでそれを示していないのであれば? –
交戦的な態度は、誰かが提供し、答えを出す確率を上げません。 – lit