我一直在做内部联接,看起来像这样
SELECT Orders.OrderID, Customers.CustomerName, Orders.OrderDate
FROM Orders
INNER JOIN Customers
ON Orders.CustomerID=Customers.CustomerID;
指定所需的每一行。我目前正在使用一个有50行的表,但我不想用所有行键入所有这些SQL连接,有没有办法说“从订单中选择*,然后给我Customers.CustomerName加入。 ...“而不是指定第一个表中的每一行?
答案 0 :(得分:8)
SELECT Orders.*, Customers.CustomerName
您只需通过tablename.column
定义所需内容,以便指定现有列名称,或使用星号*
指示该表中的所有列。
答案 1 :(得分:1)
在应用程序中,强烈建议明确要选择的列并避免使用*
,但如果您自己运行这些查询,则使用它是有意义的:
SELECT table_name.*
请注意,如果列名称是唯一的,您还可以从列中省略限定表名称。 Customers.CustomerName
CustomerName
可以Orders
,除非CustomerName
还有Orders.OrderID
列。同样,OrderID
可以是{{1}}。