0
に参加し、それは私が、JOIN INNERにそれを回すときSQL参加暗黙的に私はSQLに新しいです
SELECT
r.TicketNumber,
r.VendorNumber,
r.VendorName,
rd.FromCityCode,
rd.ToCityName,
et.TravelDate,
tc.TotalAmount,
tc.AmountInvoiced,
FROM Reservations as r,
ReservationDetails as rd,
Trips as t,
TripCosts as tc
WHERE r.ProductCode='1'
AND t.TravelDate < '2016-11-23 00:00:00.0'
AND t.TravelDate > '2016-10-23 00:00:00.0'
AND t.TripID = r.TripID
AND r.ReservationID=rd.ReservationID
AND t.TripID = tc.TripID;
を登録しよう暗黙の上でより良いパフォーマンスだため、明示的なJOINを使用してクエリを記述しようとして明示的な
SELECT
r.TicketNumber,
r.VendorNumber,
r.VendorName,
rd.FromCityCode,
rd.ToCityName,
t.TravelDate,
tb.TotalAmount,
tb.AmountInvoiced
FROM Reservations as r
JOIN ReservationDetails as rd ON rd.ReservationID=r.ReservationID
JOIN Trips as t ON TripID = r.TripID
JOIN TripBalances as tb ON tb.TripID = t.TripID
WHERE r.ProductCode='1'
AND t.TravelDate < '2016-11-23 00:00:00.0'
AND t.TravelDate > '2016-10-23 00:00:00.0'
私はインナークエリを実行すると参加
、私は私が間違って何をやっている
Error: Ambiguous column name 'TripID'.
SQLState: S0001
ErrorCode: 209
を取得していますか?
私のばかな間違いを指摘してくれてありがとう。もう1つの質問は、文字列を使用する代わりに、Javaでこのような長いクエリを作成する最もクリーンな方法は何ですか?より良い方法がありますか? ありがとう – user2070333
@ user2070333 - Javaについてよくわからないデータベースの人 –