假设我们有以下表格:
Products [ItemID,ItemName,ItemDesc]
ProductInSupermarket [ItemID,SupermarketID,ItemPrice]
我们希望从Products
中检索ItemPrice
和ProductInSupermarket
中的所有内容,有没有办法在不提及所有列的情况下执行此操作?我的意思是,我们可以这样做:
Select Products.ItemID,Products.ItemName,Products.ItemDesc,ItemPrice
FROM Products,ProductInSupermarket
WHERE Products.ItemID=ProductInSupermarket.ItemID;
但是当我们有一个包含许多列的表并且我们想从这个表和另一个表中检索所有列时,这不是那么可读。如何以更易读,更有效的方式编写此查询?
答案 0 :(得分:1)
我回显@DCoder's comment,但补充一点,你也可以省略给出没有歧义的表限定符,并使用USING
的显式连接语法更简洁:
SELECT Products.*, ItemPrice
FROM Products JOIN ProductInSupermarket USING (ItemID)