обзорная статья - PullRequest
       12

обзорная статья

1 голос
/ 19 января 2012

Я делаю некоторую работу для компании, у которой есть SQL Server 2008. Одна из их хранимых процедур ссылается (или, кажется, ссылается) на столбец, который не существует, и все же нет ошибки.

Запрос имеет следующую структуру:

         select col1, col2 from FOO
         where col3 in
         (select id from BAZ where datecreated between @date1 and @date2)

** BAZ не содержит столбец с именем [datecreated], а FOO. ** Если я изменю запрос, чтобы квалифицировать имя столбца,следующим образом, возникает ошибка:

        select col1, col2 from FOO
         where b in
         (select id from BAZ where BAZ.datecreated between @date1 and @date2)

Если это не совсем обычное поведение, может кто-нибудь указать мне соответствующую документацию?Спасибо

1 Ответ

3 голосов
/ 19 января 2012

Это по замыслу.

Совершенно верно получить доступ к столбцу из внешнего запроса в коррелированном подзапросе .В некоторых случаях это может быть желательной семантикой.

...