Решение задачи. Update в PostgreSQL vs Oracle
Друзья, всем привет!
Сегодня разберем довольно простую задачку. Суть: написать update одной таблички с использованием другой.
Полная постановка здесь.
Итак
Решение в Oracle
1️⃣ Через использование подзапроса
2️⃣ Колхоз через Merge
Решение в PostgreSQL
1️⃣ способ через подзапрос так же будет работать
2️⃣ Merge появился в PostgreSQL в 15й версии, поэтому вам может не подойти.
3️⃣ Расширенный SQL в PostgreSQL
Да, немого не привычно, но удивляет своей лаконичностью.
Хорошо ли читается? Мой коллега на ревью запнулся об этот запрос 🤷🏻♂️
—
К вопросу о миграции с одной СУБД на другую.
Можно ли взять и перенести на изи запросы с Оракла в ПГ?
Что-то да, что-то нет. Merge, например, придется переписывать, если у вас не совсем актуальная версия PG.
—
Может быть вы знаете, какие-то другие варианты запросов? Напишите в чатике 💬
А вам какой синтаксис больше нравится?
Если Oracle - ставь 🔥
Если PostgreSQL - ставь 👍
Я, пожалуй, поставлю 👍
#postgresql #oracle #Denis_Kivilev #решениезадачи
Канал Oracle Developer | Чатик 💬
Мини-курс Оптимизация: Быстрый старт 🚀
Друзья, всем привет!
Сегодня разберем довольно простую задачку. Суть: написать update одной таблички с использованием другой.
Полная постановка здесь.
Итак
Решение в Oracle
1️⃣ Через использование подзапроса
update wallet w
set configuration = (
select wt.default_configuration
from wallet_template wt
where wt.id = 6
)
where w.configuration is null;
2️⃣ Колхоз через Merge
merge into wallet w
using (select default_configuration from wallet_template where id = 6) wt
on (1 = 1)
when matched then
update
set w.configuration = nvl(w.configuration, wt.default_configuration);
Решение в PostgreSQL
1️⃣ способ через подзапрос так же будет работать
2️⃣ Merge появился в PostgreSQL в 15й версии, поэтому вам может не подойти.
3️⃣ Расширенный SQL в PostgreSQL
update wallet w
set configuration = wt.default_configuration
from wallet_template wt
where wt.id = 6
and w.configuration is null;
Да, немого не привычно, но удивляет своей лаконичностью.
Хорошо ли читается? Мой коллега на ревью запнулся об этот запрос 🤷🏻♂️
—
К вопросу о миграции с одной СУБД на другую.
Можно ли взять и перенести на изи запросы с Оракла в ПГ?
Что-то да, что-то нет. Merge, например, придется переписывать, если у вас не совсем актуальная версия PG.
—
Может быть вы знаете, какие-то другие варианты запросов? Напишите в чатике 💬
А вам какой синтаксис больше нравится?
Если Oracle - ставь 🔥
Если PostgreSQL - ставь 👍
Я, пожалуй, поставлю 👍
#postgresql #oracle #Denis_Kivilev #решениезадачи
Канал Oracle Developer | Чатик 💬
Мини-курс Оптимизация: Быстрый старт 🚀
🔥29👍23❤1