Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Есть ли разница "Select f as x from t" или "Select x = f from t" ? / 18 сообщений из 18, страница 1 из 1
11.04.2018, 17:50
    #39628643
Samir
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть ли разница "Select f as x from t" или "Select x = f from t" ?
В принципе название темы и есть вопрос.
...
Рейтинг: 0 / 0
11.04.2018, 18:06
    #39628654
TaPaK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть ли разница "Select f as x from t" или "Select x = f from t" ?
Samir,

нет, в чём подвох :)
...
Рейтинг: 0 / 0
11.04.2018, 18:30
    #39628671
iap
iap
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть ли разница "Select f as x from t" или "Select x = f from t" ?
Samir,

можно ещё as не писать
...
Рейтинг: 0 / 0
11.04.2018, 19:08
    #39628698
Shakill
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть ли разница "Select f as x from t" или "Select x = f from t" ?
iapSamir,

можно ещё as не писать к чему полумеры, можно вообще пробел между числом и алиасом не ставить
...
Рейтинг: 0 / 0
11.04.2018, 19:09
    #39628699
Glebanski
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть ли разница "Select f as x from t" или "Select x = f from t" ?
iap,

x=f это токо Transact SQL
f as x - ANSI стандарт, можно и в оракле запустить.

"AS" лучше не пропускать, ибо тогда запрос будет нечитаемым
...
Рейтинг: 0 / 0
11.04.2018, 19:10
    #39628701
Glebanski
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть ли разница "Select f as x from t" или "Select x = f from t" ?
Пардон, предыдущий ответ адресован автору :)
...
Рейтинг: 0 / 0
11.04.2018, 23:57
    #39628755
Andy_OLAP
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть ли разница "Select f as x from t" или "Select x = f from t" ?
SamirВ принципе название темы и есть вопрос.
Разница для разработчика расширения для SSMS или какой-нибудь утилиты, которая ожидает из таблицы или столбец или формулу с новым названием столбца as newcolumn - наверное, существует.

Для технического директора, который составил style-guide, наверное будет поводом наорать на разработчика, лишить премии и переставить руки обратно в плечи.

Для движка MSSQL наверное нет, теоретически. А практически парсер для текстов запросов пишут индусы, можно получить граблями в лоб очень весело и больно. Я бы не стал делать некошерные изыски "Select x = f from t".
...
Рейтинг: 0 / 0
12.04.2018, 09:26
    #39628857
Samir
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть ли разница "Select f as x from t" или "Select x = f from t" ?
А можно как-то посмотреть код после парсинга?
...
Рейтинг: 0 / 0
12.04.2018, 10:08
    #39628880
aleksrov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть ли разница "Select f as x from t" или "Select x = f from t" ?
Samir,

Флаги 3604, 8606, 8612, 8619, 2363.
Тока зачем вам это.
...
Рейтинг: 0 / 0
12.04.2018, 10:19
    #39628894
tunknown
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть ли разница "Select f as x from t" или "Select x = f from t" ?
Существенная разница для разработчика.

Прочесть запрос, найти поле и поменять его в длинном запросе на несколько экранов при совместимом именовании полей- сложно
Код: sql
1.
2.
3.
4.
5.
6.
7.
select
   dateadd ( month , datediff ( month , 0 , getdate() ) , 0 ) as MonthCurrent
   ,id as ObjectId
   ,name as ObjectName
   ,stats_schema_ver as DumbField
from
   sysobjects



Гораздо проще при Transact-SQL именовании
Код: sql
1.
2.
3.
4.
5.
6.
7.
select
   MonthCurrent = dateadd ( month , datediff ( month , 0 , getdate() ) , 0 )
   ,ObjectId = id
   ,ObjectName = name
   ,DumbField = stats_schema_ver
from
   sysobjects



Для тех, кому кроссплатформенность важна и кто выполняет полностью ОДИНАКОВЫЕ запросы на разных СУБД, конечно нужен первый метод. Много ли таких?
...
Рейтинг: 0 / 0
12.04.2018, 16:41
    #39629305
Владислав Колосов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть ли разница "Select f as x from t" или "Select x = f from t" ?
x = f устаревший формат.

Равно как select * from a,f,d where
...
Рейтинг: 0 / 0
12.04.2018, 16:55
    #39629317
TaPaK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть ли разница "Select f as x from t" или "Select x = f from t" ?
Владислав Колосовx = f устаревший формат.

Равно как select * from a,f,d where
с чего это? или так вам хочется?
...
Рейтинг: 0 / 0
12.04.2018, 17:13
    #39629336
Eleanor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть ли разница "Select f as x from t" или "Select x = f from t" ?
Владислав Колосовx = f устаревший формат
Устарело только 'string_alias' = expression, но не alias = expression
...
Рейтинг: 0 / 0
12.04.2018, 17:56
    #39629383
Владислав Колосов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть ли разница "Select f as x from t" или "Select x = f from t" ?
TaPaK,

мне также хочется и += =+ считать устаревшим.
...
Рейтинг: 0 / 0
12.04.2018, 18:09
    #39629395
Владислав Колосов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть ли разница "Select f as x from t" или "Select x = f from t" ?
TaPaKВладислав Колосовx = f устаревший формат.

Равно как select * from a,f,d where
с чего это? или так вам хочется?

Да уж, слава создателю, с 92-го года. В стандарте 89-го да, была такая форма записи. С 92-го используется CROSS JOIN.
...
Рейтинг: 0 / 0
12.04.2018, 18:35
    #39629410
TaPaK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть ли разница "Select f as x from t" или "Select x = f from t" ?
Владислав КолосовTaPaKпропущено...

с чего это? или так вам хочется?

Да уж, слава создателю, с 92-го года. В стандарте 89-го да, была такая форма записи. С 92-го используется CROSS JOIN.
вот это: "x = f устаревший формат." или вы любой бред покрываете последним предложением?
...
Рейтинг: 0 / 0
12.04.2018, 19:10
    #39629422
Владислав Колосов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть ли разница "Select f as x from t" или "Select x = f from t" ?
TaPaK,

хороший комментарий от Phil_Factor по этому вопросу: https://forum.red-gate.com/discussion/82188/code-analysis-incorrect-alias.
Если Вам нравиться играть в слова и формальности - пожалуйста, но факт остается фактом: old Sybase dialect.
...
Рейтинг: 0 / 0
12.04.2018, 20:39
    #39629471
TaPaK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть ли разница "Select f as x from t" или "Select x = f from t" ?
Владислав КолосовTaPaK,

хороший комментарий от Phil_Factor по этому вопросу: https://forum.red-gate.com/discussion/82188/code-analysis-incorrect-alias.
Если Вам нравиться играть в слова и формальности - пожалуйста, но факт остается фактом: old Sybase dialect.
т.е. вы ссылаетесь на документ 2017 версии которая говорит что в каких-то будущих версиях сие может быть! будет считаться устаревшим? я так понимаю вы уже ; ставите после стейтмента, боюсь вы столько в сфере не проработаете когда указанные Deprecated Database Engine Features вступятв силу, а то я наверное с 10 лет жду устаревание нумерованных процедур(от которых дружно избавились оглядываясь даже на прямые отсылки документации) но воз и ныне там, так что не смешите людей
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Есть ли разница "Select f as x from t" или "Select x = f from t" ? / 18 сообщений из 18, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]