テーブル "製品" であるNULLフィールドを選択:のSQL Server:外部キー
productID productNAME
21 mouse
22 keyboard
テーブル "順序":
orderID productID
31 21
32 NULL
SQLコマンド:
SELECT dbo.[order].orderID, dbo.product.productNAME
FROM dbo.[order]
INNER JOIN dbo.product ON dbo.[order].productID = dbo.product.productID
結果:
orderID productID
31 mouse
質問: 2番目の注文を表示する方法は? (その注文のproductIDはNULLですが、その注文は存在しました) そのためのトリックはありますか?
私はこれらを試してみました:
WHERE (dbo.[order].orderID = 32) OR
(dbo.product.productID IS NULL)
と
SELECT dbo.[order].orderID, ISNULL(dbo.product.productNAME, ' - ') AS Expr1
FROM dbo.[order]
INNER JOIN dbo.product ON dbo.[order].productID = dbo.product.productID
が、同じ結果
使用 'LEFT JOIN' –