powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / view с параметром
1 сообщений из 1, страница 1 из 1
view с параметром
    #32572742
eddie
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
никак не могу понять, как правильно реализовать одну вещь

проблема возникает достаточно часто, поэтому приведу абстактный пример:
предположим есть таблица остатков на складе (store) следущего вида:
version integer - версия (ну скажем дата)
name varchar(10) - название
value integer - значение

необходимо получить разницу между двумя версиями (что изменилось):
select name, old.value, new.value from store as old outer join store as new using (name) where old.version=.... and new.version=.... and old.cnt<>new.cnt

и результат использовать в других запросах. повторюсь - пример абстрактный, потребность в чем-то подобном возникает часто. другой пример - собрать статистику по какому-то фильтру (период данных, клиент и т.д.). то есть входные данные ограничиваются с помощью каких-либо параметров, получаем большой набор данных и строим сложный запрос на их основе

я вижу 3 способа реализации:
- создавать view. способ наиболее симпатичный, но параметры в view заданы жестко, придется динамически пересоздавать view для нужных параметров (могут возникнуть проблемы с параллельной работой нескольких клиентов и вообще некрасиво)
- делать prepare и execute. способ неплохой, но prepare придется делать заново в каждой сессии, нельзя будет использовать результаты в другом view
- написать sql-функцию. этот вариант не нравится тем, что плохо дружит с оптимизатором (если мы используем результат этой функции в запросе, то оптимизатор не объединяет их в один как в случае с view); кроме того у меня есть подозрение, что функции не рассчитаны на большие объемы и будут тормозить в случае больших наборов результирующих данных

такое впечатление, что я делаю что-то не то и не так, что называется изобретаю велосипед с квадратными колесами
...
Рейтинг: 0 / 0
1 сообщений из 1, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / view с параметром
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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