1

たとえば、複数の接続を持つ 2 つのテーブルがあります。

最初のテーブル: Tbl_Flights。フィールドCity_FromとがありCity_To、都市のキーが含まれています。また、Tbl_Cities一意のカウンター フィールドと都市名のフィールドを持つ というテーブルがあります。

Tbl_Flights次のように、出発地と到着地の都市名を含むテーブルからすべてのフライトを出力できるクエリを作成する方法:

From               To
------------------------------
Moscow             New York
Amsterdam          Paris
Helsinki           Tallin

ダブルINNER JOINは問題を解決しますか?

4

2 に答える 2

3

ダブル INNER JOIN は問題を解決しますか?

はい、そうです。ただし、これらはINNER JOIN同じテーブルに対する 2 つのであるため、列を 2 つの異なる列に選択Citiesできます。CiteNameFromto

そのようです:

SELECT 
  f.FlightName,
  FromCities.cityName "From",
  ToCities.CityName "To"
FROM Tbl_Flights f
INNER JOIN Cities FromCities ON f.City_From = FromCities.CityID
INNER JOIN Cities ToCities   ON f.City_To   = ToCities.CityID;

SQL フィドルのデモ

これにより、次のことが得られます。

| FLIGHTNAME |      FROM |       TO |
-------------------------------------
|    Flight1 |    Moscow | New York |
|    Flight2 | Amsterdam |    Paris |
|    Flight3 |  Helsinki |   Tallin |
于 2012-12-19T12:01:05.483 に答える
0

の線に沿った何か

SELECT f.FlightName, f.City_From, f.City_To
FROM Tbl_Flights f

各フライトと、それが出発する都市と到着する都市をリストする最も基本的なものです。

クエリからさらに複雑な結果が必要な場合はお知らせください。喜んでお手伝いさせていただきます。

編集:

追加情報を見た後、私は次があなたが望むものと一致するはずだと思い ます:

SELECT f.FlightName, c.CityName as 'from', c1.CityName as 'to'
FROM Tbl_Flights f
join Tbl_Cities c on c.cityid = f.City_From 
join Tbl_Cities c1 on c1.cityid = f.City_To 
于 2012-12-19T12:06:49.897 に答える