2012-03-30 71 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的别名。