TGViewer
SQL Ready | Базы Данных SQL Ready | Базы Данных @sql_ready · 17.5K subscribers
Post #852 2.15K
Увеличиваем производительность запроса с помощью хранимых процедур!

Хранимые процедуры — это скомпилированные и сохраненные в базе данных инструкции, которые имеют имя и выполняются по этому имени в запросе. Полезно использовать для сложных и частых одинаковых запросов, чтобы не писать запрос каждый раз с нуля.

Создадим процедуру добавления нового заказчика в таблицу заказчиков в PostrgreSQL:
CREATE OR REPLACE PROCEDURE AddNewCustomer (
FirstName VARCHAR(50)
LastName VARCHAR(50)
Email VARCHAR(50)
OUT message TEXT -- Выходной параметр
)


Далее определим границы процедуры, внутри которых опишем ее поведение:
LANGUAGE plpgsql
AS $$ -- Открываем границы процедуры
BEGIN -- Начало процедуры
-- тело функции
END; -- Конец процедуры
$$; -- Закрываем границы


Теперь определим непосредственно тело процедуры внутри описанных границ:
IF EXISTS (SELECT 1 FROM Customers WHERE Email = AddNewCustomer.Email) THEN
message := 'Клиент с таким email уже существует';
ELSE
INSERT Customers (FirstName, LastName, Email)
VALUES (AddNewCustomer.FirstName, AddNewCustomer.LastName, AddNewCustomer.Email);
message := 'Клиент успешно добавлен';
END IF;


Вызов процедуры:
CALL AddNewCustomer('Иван', 'Иванов', 'ivan.ivanov@example.com', '');


🔥 Используете этот метод как шаблон для создания процедур в ваших СУБД и внедряйте хранимые процедуры в свои запросы!

➡️ SQL Ready | #практика
  • 🔥 12
  • 👍 7
  • ❤ 6
  • 🤝 3
More from @sql_ready
  1. Oct 15, 2026Переносите строки без промежуточной выборки! Обычно архивирование делают в два этапа: снач…
  2. Oct 15, 2026Требуются 7 человек, чтобы помогали собирать чат-ботов для бизнеса по блокам, как лего. Ст…
  3. Oct 15, 2026📂 Шпаргалка по Eventual Consistency в распределённых системах! Например, Event-Driven обе…
  4. Oct 14, 2026Почему BETWEEN может незаметно исключать данные при фильтрации по датам! При работе с врем…
  5. Oct 14, 2026🔴В 2025 году Россияне заработали 5,3 млрд рублей на арбитраже криптовалют По данным Минфи…
  6. Oct 14, 2026😎 SQLinfo — русскоязычный справочник по SQL! Сайт с учебными и справочными материалами по…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →