2
Select CH.id, CH.studentId, ST.name, CH.recordId, RC.name 
from checklist CH, student ST, record RC
Where CH.studentId=ST.id and CH.recordId=RC.id

上記は mysql を使用したクエリです。上記のクエリの問題は、CH.recordId の値が null の場合、結果が表示されないことです。私の質問は、CH.recordIdがnullであっても結果を表示する方法です? また、mysql の結果タブでは、CH.recordId および RC.name 列は null になります。

ありがとう。

4

2 に答える 2

1

左結合を実行できるように、明示的な結合構文を使用します。

select CH.id, CH.studentId, ST.name, CH.recordId, RC.name
from checklist CH
join student ST
  on ST.id = CH.studentId
left join record RC
  on RC.id = CH.recordId
于 2012-11-12T01:36:13.370 に答える
0

LEFT JOINの代わりにテーブルINNER JOINを使用し、次のように新しい SQL-92 構文を使用します。

SELECT CH.id, CH.studentId, ST.name, CH.recordId, RC.name 
FROM checklist CH
LEFT JOIN student ST ON CH.StudentId = ST.id
LEFT JOIN record RC ON CH.recordId = RC.id
于 2012-11-12T01:36:26.483 に答える