SQL根据从另一个表中查找的值在一个表中查找记录

时间:2013-03-16 01:41:55

标签: sql sql-server

对不起,我试图寻找答案,但我很难将我发现的例子翻译成我自己的场景。

我有一张桌子INVENTORY。此表中的列为ITEMNUMEMI

ITEMNUM    EMI
 12345    6543
 23456    1234
 34567    6543
 45678    7654
 66666    6543
 55555    6543

另一张桌子,ORDERS。值列是ORDERNUM和ITEMNUM。

我希望用户能够输入ITEMNUM,然后在ITEMNUM表中查找INVENTORY并查找具有相同内容的所有相应ITEMNUMs EMI。然后,它会使用这些ITEMNUMs并查找具有相同ORDERs的所有ITEMNUMs

1 个答案:

答案 0 :(得分:0)

我觉得这样的事情对你有用:

SELECT DISTINCT O.*
FROM Inventory I
   JOIN Inventory I2 ON I.EMI = I2.EMI
   JOIN Orders O ON I2.ItemNum = O.ItemNum
WHERE I.ItemNum =  12345    

按ItemNum搜索,并返回与其EMI(不是ItemNum)匹配的任何顺序。

SQL Fiddle Demo