Я не совсем понимаю заявление SQL - PullRequest
1 голос
/ 30 марта 2012

Я понимаю

SELECT * FROM T WHERE C1 = 1;

Но я не до конца понимаю

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

Что такое MyT?

Ответы [ 4 ]

3 голосов
/ 30 марта 2012

MyT - псевдоним.Это просто переименование в запросе.Полезно, если имя таблицы очень длинное или вы снова присоединяетесь к той же таблице.

2 голосов
/ 30 марта 2012

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;

Вы должны использовать псевдоним для ссылки на таблицу после того, как она назначена.

Это важно при присоединении таблицы к себе:

 SELECT *
 FROM
   T MyT INNER JOIN
   T MyT2
     ON MyT.ManagerID = MyT2.EmployeeID
 WHERE MyT.C1 = 1;
1 голос
/ 30 марта 2012

MyT - это псевдоним таблицы T, который может использоваться для ссылки на него.

1 голос
/ 30 марта 2012

MyT - псевдоним для Table T.Вы после размещения имени после, вы можете ссылаться на table по имени.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...