0
TABLE知らない:サービス:TSQL:それは可能であることを確認するために、登録しよう - しかし、どのように
ServiceID ServiceName
1 Cleaning
2 Painting
3 Driving
4 Cooking
TABLE:のservicemembers:
ServiceMemberID MemberID ServiceID
1 10 3
問合せ:
SELECT s.ServiceName, sm.MemberID
FROM Services s
JOIN ServiceMembers sm ON s.ServiceID = sm.ServiceID
WHERE sm.MemberID = 10
返品:
Driving 10
質問: は、テーブルを結合する方法を、私はTSQLで次取得できます。事前に
Cleaning NULL
Painting NULL
Driving 10
Cooking NULL
感謝。
+1。あなたはとても速いです: – a1ex07
これはそれでした。私はLEFT JOINだけをやっていましたが、違いはWHERE句にsm.MemberIDがあったことです。どんな考えが違うか。 SELECT s.ServiceName、sm.MemberID FROM Services LEFT JOIN ServiceMembersをオンにします.S.ServiceID = sm.ServiceID WHERE sm.MemberID = 10 –
WHERE句は、外部結合を効果的に内部結合に変換します。何が起こるか考えてみてください。まず、外部結合は、sm.MemberID列にNULL値を持つ行を返します。次に、WERE句は、結果セットからすべての行を削除します。ここで、MemberIDは10です。これは、外部結合によってNULLになるものを削除します。 –