0

私は次のものを持っています:

SELECT  
   f.Korsnamn AS Foto, ä.ID AS ÄrendeID, ä.Kortnamn AS Ärende, l.Kortnamn AS Labb
FROM    
   Foto f, Ärendet ä, Labbrapport l
WHERE   
   f.ÄrendeID = ä.ID

どちらが返されますか:

Foto  ÄrendeID  Ärende  Labb
1123       10   asd      sdf
korset     12   234      sdf
111        13   213      sdf
asd         9   123123   sdf

私のLabbrapportテーブルには、外部キーが のエントリが 1 つしかありませんが、10、13、および 9 にもÄrende.ID = 12リストされていますか? ÄrendeID次のような出力を得るにはどうすればよいですか。

Foto    ÄrendeID  Ärende    Labb
1123       10       asd 
korset     12       234      sdf
111        13       213
asd         9       123123  

乾杯

4

3 に答える 3

0
SELECT f.Korsnamn AS Foto, ä.ID AS ÄrendeID, ä.Kortnamn AS Ärende, l.Kortnamn AS Labb
FROM Foto f, Ärendet ä, Labbrapport l
WHERE f.ÄrendeID = ä.ID
AND l.ÄrendeID = f.ÄrendeID
于 2012-10-09T22:02:21.400 に答える
0

と の間にもjoin条件を追加します。以下に例を示します。LabbrapportÄrendet

SELECT f.Korsnamn AS Foto, ä.ID AS ÄrendeID, ä.Kortnamn AS Ärende, 
       l.Kortnamn AS Labb
FROM Foto f, Ärendet ä, Labbrapport l
WHERE f.ÄrendeID = ä.ID
      AND ä.ID = l.ID;

上記のクエリの正しいjoin key列を使用してください。Labbrapport

于 2012-10-09T22:02:56.783 に答える
0

LEFT JOIN または RIGHT JOIN を使用するかは、メインのテーブルによって異なります。あなたの場合、LEFT JOINを使用してください

SELECT f.Korsnamn AS Foto, ä.ID AS ÄrendeID, ä.Kortnamn AS Ärende, 
   l.Kortnamn AS Labb
FROM Foto f 
INNER JOIN Ärendet ä ON f.ÄrendeID = ä.ID
LEFT JOIN Labbrapport l ON ä.ID = l.ID
于 2012-10-09T22:24:10.173 に答える