-3

私は SQL を学んでいますが、今は 1 つのことを理解しようとしています。

私は2つのテーブルを持っています

製品:

Product ID (PK) | ProductName
1               |  Apple
2               |  Pear
3               |  Orange
4               |  Banana

販売注文の詳細:

SalesOrderID (PK) | Product ID | Quantity
1                 | 1          | 5
2                 | 3          | 4
3                 | 4          | 2

私の質問は、ID を表示する代わりに、2 番目のテーブルに製品の名前を表示するにはどうすればよいですか?

ありがとうございました。

4

5 に答える 5

2

使用する必要がありますjoin

select P.ProductName, S.SalesOrderID, S.Quantity
from Products P
join SalesOrderDetail S on S.Product_ID=P.Product_ID

ここでは、結合に関する詳細情報を見つけることができます。

于 2012-11-23T08:14:04.470 に答える
0

これには、SQL で利用可能な自然結合を使用できます。MySQL を使用している場合、コードは次のようになります。

SELECT ProductName, ProductQuantity from Products NATURAL JOIN SalesOrderDetails;

また

結合操作は次のように簡単に使用できます。

SELECT ProductName,ProductQuantity from Products p INNER JOIN SalesOrderDetails sd ON p.ProductId = sd.ProductId;

または単に:

SELECT ProductName,ProductQuantity from Products p, SalesOrderDetails sd WHERE p.ProductId = sd.ProductId;
于 2012-11-23T08:20:20.157 に答える
0

これを試して、結合を使用してください

select sod.salesorderid,p.productname,sod.quantity from salesorderdetail sod
inner join products p 
on p.productid=sod.productid
于 2012-11-23T08:13:56.170 に答える
0

そうなる

Select s.SalesOrderId, p.ProductName, s.Quantity from SalesOrderDetail s inner join Products p ON s.ProductID = p.ProductID
于 2012-11-23T08:15:49.687 に答える
-1

これを試して:

SELECT SOD.SalesOrderID
  ,P.ProductName
  ,SOD.Quantity 
FROM SalesOrderDetail SOD 
 ,Products P
WHERE P.ProductID=SOD.Product ID
于 2012-11-23T08:23:45.830 に答える