Sobes.tech
Назад к вопросам
Senior
3

Когда ты делаешь обычный SELECT, сколько запросов отправляет драйвер на Postgres? Какие запросы и что там будет?

Компании, где спрашивали
СБК ПАРУС

Ответ от нейросети

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 активных пользователей.