Mysql
在與公共列的內部聯接上選擇 *
我有 3 個表(mysql db),我想在其上進行內部連接。問題是這些表有共同的列。我知道我可以使用別名來區分它們(
select A.x as Ax, B.x as Bx, C.c as Cx ...
),但這需要列出列。然而,這並不是一個真正的選擇。有沒有一種方法可以一次為表的所有列提供別名?像
select a.* as a*
什麼?
您需要自己指定每一列。
範例:表 Country 和 City 都有一個 name 列
SELECT a.Name AS CountryNane, b.Name AS CityName, c.* FROM Country a JOIN City b ON a.Code = b.CountryCode JOIN CountryLanguage c ON a.Code = c.CountryCode;
如果要為欄位分配別名,則必須在 SELECT 語句的列表欄位中顯式顯示該欄位。
因此,如果您的三個表中有通用名稱欄位,則必須顯式。
如果您使用這樣的符號,
SELECT a.* ...
您將顯示別名表的所有欄位,但標題列中的欄位名稱與表結構相同。