Sobes.tech
Senior
43

როდესაც აკეთებ ჩვეულებრივ SELECT-ს, რამდენი შეკითხვა აგზავნის დრაივერი Postgres-კი? რა შეკითხვები და რა იქნება იქ?

კომპანიებმა სადაც სთხოვეს
СБК ПАРУС

პასუხი AI-სგან

sobes.tech AI

При выполнении обычного SELECT через JDBC-драйвер к Postgres обычно отправляется один SQL-запрос — сам SELECT.

Процесс примерно такой:

  1. Клиент (приложение) отправляет один SQL-запрос на сервер Postgres.
  2. Сервер обрабатывает запрос, выполняет выборку данных.
  3. Сервер возвращает результат (набор строк) клиенту.

То есть драйвер не отправляет дополнительных запросов, если не используется что-то вроде подготовленных выражений с отдельной подготовкой или дополнительные метаданные. В простом случае это один запрос и один ответ с данными.

Если используется подготовленный запрос (PreparedStatement), то драйвер может сначала отправить запрос на подготовку (Parse), затем на выполнение (Execute), но это всё происходит в рамках одного логического запроса.

Пример:

SELECT id, name FROM users WHERE active = true;

Отправляется один запрос, возвращается набор строк с id и name активных пользователей.