Как создать временную таблицу sql?
В PostgreSQL хочу сохранить промежуточный результат нескольких запросов только на время работы одного подключения. Постоянная таблица для этого кажется лишней, но CTE между разными командами не сохраняется.
Дом, ремонт, стройка
Животные и питомцы
Учёба и образование
Фотография
Психология
Пока нет лидеров с лучшими ответами.
Ваш вопрос
В PostgreSQL хочу сохранить промежуточный результат нескольких запросов только на время работы одного подключения. Постоянная таблица для этого кажется лишней, но CTE между разными командами не сохраняется.
4o
В PostgreSQL создайте временную таблицу командой CREATE TEMP TABLE selected_ids (id integer);. Затем в том же соединении можно добавлять в нее строки и читать их несколькими запросами. По умолчанию таблица существует до завершения сеанса, а ее строки сохраняются после COMMIT. Вариант ON COMMIT DROP удаляет таблицу при завершении текущей транзакции, поэтому при автокоммите она может исчезнуть сразу после создания. Временная таблица принадлежит сеансу: другое подключение не получает доступ к ней как к общей таблице проекта. Не указывайте обычную схему перед ее именем при создании, PostgreSQL использует специальную временную схему. Это отличается от CTE, который действует внутри одной команды.
Пока нет премиум-вопросов в подборке
Не нашли то, что искали?
Задайте свой вопрос
Лучший ответ
4.20
4.20
Как создать временную таблицу sql?