SQLHUB Telegram 1940
🧠 Oracle SQL — продвинутый приём: `MERGE` вместо `UPDATE` + `INSERT`

Если ты сначала пытаешься обновить строку, а если её нет — вставляешь новую, не пиши две команды. Используй MERGE — это быстрее, чище и атомарно.

🔧 Пример:


MERGE INTO employees e
USING (SELECT 101 AS emp_id, 'Alice' AS name FROM dual) src
ON (e.emp_id = src.emp_id)
WHEN MATCHED THEN
UPDATE SET e.name = src.name
WHEN NOT MATCHED THEN
INSERT (emp_id, name)
VALUES (src.emp_id, src.name);


📌 Что делает:
• Ищет по ключу (`ON`)
• Если запись есть — обновляет
• Если нет — вставляет
• Всё за один проход, без гонок и лишних проверок

Почему это важно:
• Меньше round-trip'ов между приложением и БД
• Атомарная логика — MERGE гарантирует целостность
• Лучше подходит для ETL, синхронизации, загрузки внешних данных

🧠 Вывод: если пишешь IF EXISTS THEN UPDATE ELSE INSERT — ты уже проиграл.
Пиши MERGE, и база всё сделает за тебя.
👍165



tgoop.com/sqlhub/1940
Create:
Last Update:

🧠 Oracle SQL — продвинутый приём: `MERGE` вместо `UPDATE` + `INSERT`

Если ты сначала пытаешься обновить строку, а если её нет — вставляешь новую, не пиши две команды. Используй MERGE — это быстрее, чище и атомарно.

🔧 Пример:


MERGE INTO employees e
USING (SELECT 101 AS emp_id, 'Alice' AS name FROM dual) src
ON (e.emp_id = src.emp_id)
WHEN MATCHED THEN
UPDATE SET e.name = src.name
WHEN NOT MATCHED THEN
INSERT (emp_id, name)
VALUES (src.emp_id, src.name);


📌 Что делает:
• Ищет по ключу (`ON`)
• Если запись есть — обновляет
• Если нет — вставляет
• Всё за один проход, без гонок и лишних проверок

Почему это важно:
• Меньше round-trip'ов между приложением и БД
• Атомарная логика — MERGE гарантирует целостность
• Лучше подходит для ETL, синхронизации, загрузки внешних данных

🧠 Вывод: если пишешь IF EXISTS THEN UPDATE ELSE INSERT — ты уже проиграл.
Пиши MERGE, и база всё сделает за тебя.

BY Data Science. SQL hub


Share with your friend now:
tgoop.com/sqlhub/1940

View MORE
Open in Telegram


Telegram News

Date: |

To edit your name or bio, click the Menu icon and select “Manage Channel.” The main design elements of your Telegram channel include a name, bio (brief description), and avatar. Your bio should be: A few years ago, you had to use a special bot to run a poll on Telegram. Now you can easily do that yourself in two clicks. Hit the Menu icon and select “Create Poll.” Write your question and add up to 10 options. Running polls is a powerful strategy for getting feedback from your audience. If you’re considering the possibility of modifying your channel in any way, be sure to ask your subscribers’ opinions first. Telegram message that reads: "Bear Market Screaming Therapy Group. You are only allowed to send screaming voice notes. Everything else = BAN. Text pics, videos, stickers, gif = BAN. Anything other than screaming = BAN. You think you are smart = BAN. A vandalised bank during the 2019 protest. File photo: May James/HKFP.
from us


Telegram Data Science. SQL hub
FROM American