643 / 338 / 139
Регистрация: 19.10.2013
Сообщений: 1,209

Порядок выполнения запроса, SQL Server vs. MySQL

31.10.2025, 03:25. Показов 1062. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток. Решил полюбопытстовать, из книги Ицик Бен-Ган по SQL серверу, порядок выполения запроса:

SQL
1
2
3
4
5
6
1) FROM;
2) WHERE;
3) GROUP BY;
4) HAVING;
5) SELECT;
6) ORDER BY.
запрос вида

T-SQL
1
SELECT ...,count(*) as cnt FROM ..... group by ... having cnt>1
в SQL Server выдает ошибку, что логично исходя из порядка выполения. Актуально и для Postgre.
Но в MySQL запрос работает корректно, хотя гугление говорит, что порядок выполения запроса аналогичен в SQL Server и Postgre. Вопрос, почему так?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
31.10.2025, 03:25
Ответы с готовыми решениями:

Ошибка SQL запроса #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax t
Помогите пожалуйста! CREATE TABLE `tickets` ( `id` int(4) NOT NULL auto_increment, `user`...

[MYSQL][/MYSQL] Доброго времени суток. Не могу сделать запросы mySQL server, очень сложные, мб кто что подскажет)
Запрос №1 В данном запросе нужно выдать Ф.И.О и телефон сотрудника, заключившего большее...

Порядок строк в результате выполнения запроса
Добрый день. Ситуация следующая, есть небольшой запрос с несколькими джоинами и вот при выполнении...

7
671 / 294 / 120
Регистрация: 12.04.2022
Сообщений: 1,003
31.10.2025, 09:02
Select-a ещё не было ( в данном случае группа ещё не сформирована), сервер не знает про поле cnt.

T-SQL
1
2
3
4
5
6
7
8
create table #test (id int, name char)
go
set showplan_xml on
go
select id, count(*) as cnt from #test group by id having  count(*) > 1
go
set showplan_xml off
go
В плане фильтрация по агрегату выглядит как [Expr1003>1] про cnt ещё неизвестно.
Миниатюры
Порядок выполнения запроса, SQL Server vs. MySQL  
0
-610 / 35 / 0
Регистрация: 10.03.2025
Сообщений: 485
31.10.2025, 09:14
Посмотрел кучу материала везде одинаковый порядок SELECT
Миниатюры
Порядок выполнения запроса, SQL Server vs. MySQL  
0
643 / 338 / 139
Регистрация: 19.10.2013
Сообщений: 1,209
31.10.2025, 11:41  [ТС]
Цитата Сообщение от PaulWist Посмотреть сообщение
В плане фильтрация по агрегату выглядит как [Expr1003>1] про cnt ещё неизвестно.
это понятно, но вот в mysql это работает
0
Эксперт .NET
 Аватар для Usaga
14316 / 9402 / 1355
Регистрация: 21.01.2016
Сообщений: 35,461
31.10.2025, 11:58
116rus, MySQL не сильно следует стандартам SQL. У него группировки ведут себя немного отлично от других СУБД.
1
Valechka-Думай о Высоком
 Аватар для Ludwig Valentin
171 / 290 / 26
Регистрация: 11.08.2022
Сообщений: 3,713
31.10.2025, 18:18
Цитата Сообщение от Usaga Посмотреть сообщение
MySQL не сильно следует стандартам SQL. У него группировки ведут себя немного отлично от других СУБД.
Ага, это явно нестандартная фича. К тому же cnt пересчитывается для каждой строки или там оптимизатор работает?
0
Эксперт .NET
 Аватар для Usaga
14316 / 9402 / 1355
Регистрация: 21.01.2016
Сообщений: 35,461
01.11.2025, 02:54
Цитата Сообщение от Ludwig Valentin Посмотреть сообщение
К тому же cnt пересчитывается для каждой строки или там оптимизатор работает?
Хз. Надо план запроса смотреть.
0
74 / 18 / 6
Регистрация: 18.01.2025
Сообщений: 83
02.11.2025, 13:15
Порядок выполнения тут одинаковый. Видимость алиасов разная.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
02.11.2025, 13:15
Помогаю со студенческими работами здесь

Порядок выполнения запроса SELECT
Всем привет! Я пишу движок БД Хочу понять, в какой порядке выполняется запрос для экономии памяти...

Microsoft SQL Server Management studio 17 не подключается к mysql server 5.7
Проще говоря studio его вообще не видит, пишу чтобы подключился (имя указываю то, которое вводил...

Можно использовать бд созданную в SQL server 2012 на SQL server 2008?
Можно использовать бд созданную в SQL server 2012 на SQL server 2008? если да,то как ее подключить?

SQL Server - Не могу установить SQL Server
Здравствуйте, не получается установить SQL Server 2012 Ошибка:

Как настроить MS SQL Server, чтобы через Access, можно было редактировать таблицы MS SQL Server?
ВОПРОС: Как настроить MS SQL Server, чтобы через Access, можно было редактировать таблицы MS...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

Новые блоги и статьи
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru