从一个表,然后从另一个

从一个表,然后从另一个

问题描述:

一列检索所有列SQL查询假设我们有如下表:从一个表,然后从另一个

Products [ItemID,ItemName,ItemDesc] 
ProductInSupermarket [ItemID,SupermarketID,ItemPrice] 

,我们想从ProductInSupermarket检索所有从ProductsItemPrice,是有什么办法那么没有提到所有的列呢?我的意思是,我们可以这样做:

Select Products.ItemID,Products.ItemName,Products.ItemDesc,ItemPrice 
    FROM Products,ProductInSupermarket 
    WHERE Products.ItemID=ProductInSupermarket.ItemID; 

,但事实并非如此可读的时候,我们有很多列的表格,我们要检索的所有从该表和一些其他表的。我怎样才能以更可读和有效的方式编写这个查询?

+3

'选择产品*,ProductInSupermarket。 ItemPrice'? – DCoder 2013-04-27 08:41:01

我赞同@DCoder's comment,但补充一点,你也可以省略赋予表预选赛里没有歧义,并使用明确的联接语法与USING会更加简洁。

SELECT Products.*, ItemPrice 
FROM Products JOIN ProductInSupermarket USING (ItemID)