powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Улучшение читабельности большого запроса
9 сообщений из 9, страница 1 из 1
Улучшение читабельности большого запроса
    #35383706
Tarabtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть гигантский SQL запрос, разбаираться в нем, крайне тяжело - просто головная боль.
В программах (напрмер, Delphi, C) можно исользовать процедуры - группируем код по каким либо признакам и прячем его по процедурам - по итогу имеем удобный и понятный код, на производительности это не отражается. Если же чать зарпоса разбросать по процедурам, то время работы сильно уменьшится - значит этот прием отпадает.

Возможны ли какие нибудь приемы по упрощению (улучшению читабельности) кода SQL?
ЗЫ Аккуратное наипсание уже применено.
...
Рейтинг: 0 / 0
Улучшение читабельности большого запроса
    #35383806
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TarabtsevВ программах (напрмер, Delphi, C) можно исользовать процедуры - группируем код по каким либо признакам и прячем его по процедурам - по итогу имеем удобный и понятный код, на производительности это не отражается.
В "не отражается" Вы ошибаетесь. Хотя если компилятор умеет inline-ить процедуры, бывает, что и не отражается.

TarabtsevВозможны ли какие нибудь приемы по упрощению (улучшению читабельности) кода SQL?
Сложные запросы стоит писать с применением WITH (в стандарте это называется кажется common table expression). Фактически это ближайший аналог "подпрограммы" для запросов. Стандартные куски следует выделять в именованные запросы - то есть во view. При этом не жалеть сделать столько похожих view, сколько нужно для нормальной производительности.
...
Рейтинг: 0 / 0
Улучшение читабельности большого запроса
    #35384158
Krevedko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
С помощью вьюх можно упростить и повысит читабельность любого запроса
...
Рейтинг: 0 / 0
Улучшение читабельности большого запроса
    #35384717
Tarabtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Благодарю за ответы!

Дополню вопрос: самая большая секция (2/3 кода) это условия отбора. Что нибудь с этим можно сделать?
...
Рейтинг: 0 / 0
Улучшение читабельности большого запроса
    #35386654
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Tarabtsev
Дополню вопрос: самая большая секция (2/3 кода) это условия отбора. Что нибудь с этим можно сделать?
В MS SQL можно воспользоваться пользовательскими функциями
...
Рейтинг: 0 / 0
Улучшение читабельности большого запроса
    #35395825
Bely
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TarabtsevБлагодарю за ответы!

Дополню вопрос: самая большая секция (2/3 кода) это условия отбора. Что нибудь с этим можно сделать?Вставить комментарии между условиями отбора.
Код: plaintext
1.
2.
3.
4.
SELECT *
FROM ........
WHERE org.id = pers.org_id           -- Связываем Организации и Персоны
  and org.create_date > sysdate -  7   -- Организация создана за последнюю неделю
...
Рейтинг: 0 / 0
Улучшение читабельности большого запроса
    #35402771
Николай1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TarabtsevБлагодарю за ответы!

Дополню вопрос: самая большая секция (2/3 кода) это условия отбора. Что нибудь с этим можно сделать?
Каждое выражение- на отдельной строке.
Выравнивать весь код по столбцам

Код: plaintext
1.
2.
3.
4.
where  T1.Filed1     = T2.Filed3
   and T4.Fileddddd5 = T4.Filed6
   and (T6.Field8    > T6.Filed9
   or   T6.Field     < T7.Field11)....

Мдя.... Выровнять код при пропорциональном шрифте практически невозможно....
Ну, остается поверить на слово....
...
Рейтинг: 0 / 0
Улучшение читабельности большого запроса
    #35403321
andrey odegov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
на эту тему есть книга, на мой взгляд не плохая:
Joe Celko's SQL Programming Style (The Morgan Kaufmann Series in Data Management Systems)
ISBN: 0120887975
...
Рейтинг: 0 / 0
Улучшение читабельности большого запроса
    #35403478
egorych
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andrey odegovна эту тему есть книга, на мой взгляд не плохая:
Joe Celko's SQL Programming Style (The Morgan Kaufmann Series in Data Management Systems)
ISBN: 0120887975а на эту книгу есть топик , на мой взгляд ещё лучше
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Улучшение читабельности большого запроса
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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