2012-12-04 267 views
4

我對SQL很陌生,我只是試圖找出當你使用t1,t2或t3等時的含義... 我無法理解它,只是想了解它。我已經試過尋找谷歌,但我還沒有發現任何東西......你能幫忙嗎?SQL語句t1,t2等

感謝 分子量

+0

你能否澄清T1,T2,T3的情況下,請 - 包括樣本查詢。 –

+1

t1,t2和t3聽起來像表的別名,是這樣嗎? –

+0

@WillA http://stackoverflow.com/questions/1690762/complicated-mysql-query/1690808 – fortytwo

回答

4

T1/T2/T3是「臨時」表通用表的別名(即由多個表,並且沒有很好的別名如子查詢)....稱之爲位懶惰,如果有幫助:)

SELECT * FROM MyTable t1意味着從現在開始,我打電話給MyTable t1。寫這將是另一種方式:SELECT t1.* FROM MyTable t1或者如果你沒有使用別名,SELECT MyTable.* FROM MyTable

+1

不一定是臨時表。這只是一個別名。有時用於臨時表,有些用於解析名稱空間。加入兩個具有相同列名稱的表?您可以爲每個表添加別名,以便您可以選擇是否需要t1.id或t2.id. –

+0

另外至少在SQL Server中,臨時表和子查詢是非常不同的概念。 –

+0

引用「temp」的目的是更多地記錄查詢中未命名/未指定的表,這通常涉及子查詢,表變量等。我同意你的看法,它與實際的「臨時」表格無關。我只是試圖引用t1/t2/t3時(與更恰當的命名別名相反,比如用戶表中的「u」)是最常用的。你能建議我怎麼修改答案,在這一點上更清楚一點? –

相關問題