我們有一個MySQL數據庫,其中包含與下面列的表SportsTicker(如MySQL工作臺所示):需要解釋與MySQL查詢
'IDSportsTicker', 'int(11)', 'NO', 'PRI', NULL, ''
'SportsID', 'smallint(6)', 'NO', '', '1', ''
'HomeTeamID', 'int(11)', 'NO', '', NULL, ''
'ForeignTeamID', 'int(11)', 'NO', '', NULL, ''
'LeagueID', 'int(11)', 'NO', '', NULL, ''
'CoverageID', 'smallint(2)', 'NO', '', NULL, ''
'PlayStateID', 'smallint(2)', 'NO', '', NULL, ''
'StadiumID', 'int(11)', 'NO', '', NULL, ''
'dateTime', 'datetime', 'NO', '', NULL, ''
'neutralGround', 'bit(1)', 'NO', '', 'b\'0\'', ''
'scoutConfirmed', 'bit(1)', 'NO', '', NULL, ''
'booked', 'bit(1)', 'NO', '', 'b\'0\'', ''
'oddsAvailable', 'bit(1)', 'YES', '', 'b\'0\'', ''
'liveOddsAvailable', 'bit(1)', 'NO', '', 'b\'0\'', ''
而且我有一個查詢,它的工作原理:
SELECT ST.IDSportsTicker, ST.HomeTeamID, T.name as HomeTeamName, ST.ForeignTeamID,
AW.name as AwayTeamName, ST.LeagueID, L.name, ST.dateTime
FROM SportsTicker ST
JOIN Team T ON ST.HomeTeamID = T.IDTeam
JOIN Team AW ON ST.ForeignTeamID = AW.IDTeam
JOIN League L ON ST.LeagueID = L.IDLeague;
我只是好奇,所有那些'ST。','T.','AW'。和其他前綴是什麼意思?
非常感謝。
這些是爲引用表創建的別名。通常用於使查詢更具可讀性。此外,您可能已經注意到,您在from子句(自加入)中使用了兩次Team表。使用別名作爲列的限定符使得它們毫不含糊。 – 2014-10-01 04:54:10
http://dev.mysql.com/doc/refman/4.1/en/identifiers.html – Phil 2014-10-01 04:54:27
非常感謝,先生們。我甚至不知道要谷歌什麼。 – RdB 2014-10-01 07:45:31