The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Опубликован PRQL, компилируемый в SQL язык обработки данных, opennews (??), 26-Июл-23, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


119. "Опубликован PRQL, компилируемый в SQL язык обработки данных"  +/
Сообщение от Аноним (117), 27-Июл-23, 17:24 
Модулей в SQL быть не может, однако от дублирования избавиться можно.
1) Можно повторяющийся SQL инклюдить из файла.
2) Можно написать класс билдера запросов для моделей, одноклассники которого смогут экспортировать миксины для построения запроса, а также использовать их для построения своих запросов. Очень грубо, можно передать список вещей, которые нужно добавить в те или иные части запроса, и что нужно потом сделать с результатом запроса. Например, можно добавить в группировку и в селект, а после исполнения развернуть group_concat в массивчик айдишек и т.д. В одном из проектов я такую вещь сделал и несмотря на некую навороченность кода, SQL существовал в единственном экземпляре. Запросы на экран и более были нормой, да.
Ответить | Правка | К родителю #27 | Наверх | Cообщить модератору

123. "Опубликован PRQL, компилируемый в SQL язык обработки данных"  +/
Сообщение от Прохожий (??), 27-Июл-23, 20:41 
> Модулей в SQL быть не может

Я бы не был столь категоричным. View - вполне себе самостоятельный модуль. Есть и ещё, попроще, не так, чтобы модули, но вполне нормальный способ сократить дублирование кода. В Oracle использование функций в теле SQL-запроса подвезли с 19-й версии. Кроме того, есть with, как уже отметили выше.

Ответить | Правка | Наверх | Cообщить модератору

136. "Опубликован PRQL, компилируемый в SQL язык обработки данных"  +/
Сообщение от Аноним (117), 28-Июл-23, 15:35 
Фактически это макросы. Подсократить запросы получится, спору нет.
Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру