-1

コード テーブルのコード値を格納する 2 つの列を持つテーブル (Foo) があります。

id - code1 - code2
1  -  CC    -  DD

コード表:

  Name         -   Code - Grouping
 Call Center   -    CC  -    22
 County        -    DD  -    54

最初のテーブルに基づいて「コール センター」と「郡」を取得する SQL が必要です。Foo.code1 は必ず Codes.Grouping=22 を使用し、Foo.code2 は Codes.Grouping=54 を使用することを知っていると仮定します。

両方の値を返す 1 つの SQL を作成しようとしています。

4

2 に答える 2

2

このクエリを試してください:

select name from codes c inner join foo f on c.code = f.code1 or c.code = f.code2

ここにsqlfiddleがあります

于 2013-04-24T17:08:29.840 に答える
0

これがあなたの質問に対する答えであるかどうかはよくわかりません。ただし、Foo テーブルの id 値のコードとグループ化の両方を取得する必要があると思います。このために私は

SELECT Foo.id, 
       C1.Name AS code1_name, C1.Code AS code1_code, 
       C1.Grouping AS code1_grouping, 
       C2.Name AS code2_name, C2.Code AS code2_code, 
       C2.Grouping AS code2_grouping 
  FROM Foo 
       INNER JOIN Codes AS C1 ON C1.Code = Foo.code1 
       INNER JOIN Codes AS C2 ON C2.Code = Foo.code2
  WHERE Foo.id = 1;

Tuffkid sqlfiddle sqlfiddle の展開

于 2013-04-24T17:11:26.600 に答える