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

Когда нужно использовать сырой SQL

Использовать сырой SQL стоит в следующих случаях:

  1. Сложные запросы – когда ORM не может эффективно выразить запрос (например, оконные функции, сложные JOIN).
  2. Производительность – для оптимизации критичных участков, где ORM генерирует неэффективный SQL.
  3. Специфичные функции БД – использование уникальных возможностей СУБД (например, JSONB в PostgreSQL).

Пример с Django:

python
from django.db import connection

with connection.cursor() as cursor:
    cursor.execute("""
        SELECT username, COUNT(*) as total 
        FROM auth_user 
        GROUP BY username 
        HAVING COUNT(*) > 1
    """)
    rows = cursor.fetchall()

⚠️ Осторожно: сырой SQL требует ручного экранирования параметров для предотвращения SQL-инъекций. Всегда используйте параметризованные запросы (cursor.execute("SELECT ... WHERE id = %s", [id])).

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

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

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

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