2012-03-30 34 views
1

我明白我不完全理解的SQL語句

SELECT * FROM T WHERE C1 = 1; 

但我不完全理解

SELECT * FROM T MyT WHERE MyT.C1 = 1; 

什麼是MYT?

+0

部分的T臺:

加入時表本身這些都是必不可少的MYT。如果您想要從同一個表中執行多個選擇 – ControlAltDel 2012-03-30 15:23:40

回答

2

MyT是該表的引用的別名。

SELECT * FROM T MyT WHERE MyT.C1 = 1; 

將工作以及

SELECT * FROM T MyT WHERE C1 = 1; 

將工作以及

SELECT MyT.FieldName FROM T MyT WHERE MyT.C1 = 1; 

但是,這是行不通的:

SELECT T.FieldName FROM T MyT WHERE MyT.C1 = 1; 

您必須使用別名在分配後引用表。與 「FROM T MYT」 名稱

SELECT * 
FROM 
    T MyT INNER JOIN 
    T MyT2 
    ON MyT.ManagerID = MyT2.EmployeeID 
WHERE MyT.C1 = 1; 
1

MyTTableT的別名。之後放置一個名稱後,您可以通過名稱引用table

3

MyT是別名。這只是一個查詢內重命名。如果表格名稱很長或者如果再次加入同一個表格,這會很有幫助。

+3

*必需*,則此功能非常有用,如果您多次加入同一個實體。 – 2012-03-30 15:23:29

+0

是的,對不起,應該更清楚。 – MichaelRushton 2012-03-30 15:27:11

1

MyT是可以用來引用它的表T的別名。