2009-07-21 17 views
0

多くの感謝をもう一度先に受けてください。私がやろうとしています何クエリの問題

がリストである代理店nuseは、病院のH2に動作するかどうかまたはは 資格Q3または両方

を持っている私は2つのテーブルAgency_A &資格

Agency_A  
Nurse  Hospital 
Thomas  H1 
Taylor  H2 
Evans  H3 
Davies  H2 

Qualification 
Nurse  Qualification 
Thomas  Q2 
Taylor  Q3 
Evans  Q4 
Freeman Q3 

を持っているので、I探しています

|TAYLOR |       {as she works in H2 and has qualification Q3} 
|FREEMAN |       {as she has qualification Q3} 
|DAVIES |       {as she works in H2 etc 

これについての助けがあれば助かります。

答えて

3

これは、それをカバーするべきである:

SELECT 
    COALESCE(Qualification.Nurse, Agency_A.Nurse) 
FROM (
    SELECT DISTINCT Nurse 
    FROM Agency_A 
    WHERE Hospital = 'H2') Agency_A 
LEFT OUTER JOIN (
    SELECT DISTINCT Nurse 
    FROM Qualification 
    WHERE Qualification = 'Q3') Qualification 
ON Agency_A.Nurse = Qualification.Nurse 

これは、看護師は、他のテーブルにあるがない場合をカバーします。

+0

こんにちは、すごく助かりました。 – Ben