Встречается на собеседованиях • сегодня

Как оптимизируешь запрос

Для оптимизации SQL-запросов в Java:

  1. Индексы – добавляю индексы на часто используемые поля в WHERE/JOIN:
sql
CREATE INDEX idx_user_email ON users(email);
  1. Выборка только нужных полей вместо SELECT *:
java
// Плохо:
"SELECT * FROM users WHERE id = ?"

// Хорошо:
"SELECT id, name, email FROM users WHERE id = ?"

text

3. **Пакетная обработка** для множественных операций:
```java
PreparedStatement ps = connection.prepareStatement(
    "INSERT INTO orders (product_id, quantity) VALUES (?, ?)");
for (Order order : orders) {
    ps.setInt(1, order.getProductId());
    ps.setInt(2, order.getQuantity());
    ps.addBatch();
}
ps.executeBatch();
  1. Кэширование часто запрашиваемых данных (Hibernate 2nd level cache, Redis)

  2. Анализ EXPLAIN для сложных запросов

  3. Подготовленные выражения (PreparedStatement) для предотвращения SQL-инъекций и повторного использования плана выполнения.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы