0

次のような列があるPatientという名前のテーブルがあります

ID Disease1  Disease2  Disease3
         ----------
1     4        3         2
         ----------
2     2        5
         ----------    
3     6
         ----------
4     1

これらは、病気の名前が次のように配置されているテーブル Disease から取得したマッピング値です。

1  hypertension
2  niddm
3  allergy  
4  cough
5  floo
6   vv
etc

SQLクエリで選択したい

ID Disease1  Disease2  Disease3
           ----------
1   cough    allergy     niddm
           ----------
2   niddm    floo
           ----------
3    vv
           ----------
4     HT

私は 4,5 テーブルにマッピングされたテーブルを持っており、それらすべての ID の代わりに元の値が必要であることを覚えておいてください。

4

1 に答える 1

3

依存している列が 3 つあるため、テーブルをテーブルDiseaseに 3 回結合する必要があります。PatientPatientDisease

SELECT  a.ID,
        b.Disease AS Disease1,
        c.Disease AS Disease2,
        d.Disease AS Disease3
FROM    Patient a
        LEFT JOIN Disease b
            ON a.Disease1 = b.ID
        LEFT JOIN Disease c
            ON a.Disease2 = c.ID
        LEFT JOIN Disease d
            ON a.Disease3 = d.ID

結合についてさらに詳しく知りたい場合は、以下のリンクにアクセスしてください。

于 2013-05-29T06:59:14.460 に答える