Разные варианты объединения таблиц в SQL
При равенстве id INNER JOIN даст 2 строки, LEFT — 4, RIGHT — 4, FULL — 6. CROSS JOIN даст 16 пар, потому что сочетает каждую строку A с каждой строкой B.
Читать ответПодготовка к интервью
Разбирайте реальные вопросы, сверяйтесь с подробными ответами и готовьтесь по технологиям и компаниям.
Проверьте, насколько резюме подходит выбранной позиции, и получите рекомендации по улучшению.
Каталог
При равенстве id INNER JOIN даст 2 строки, LEFT — 4, RIGHT — 4, FULL — 6. CROSS JOIN даст 16 пар, потому что сочетает каждую строку A с каждой строкой B.
Читать ответИмя order конфликтует с ключевым словом SQL, поэтому без экранирования запрос обычно не выполнится. Сам скалярный подзапрос COUNT(*) допустим, но здесь лишний.
Читать ответНазовите конкретные задачи, где действительно использовали AI, и отдельно — был ли опыт генерации Java-кода. Опишите проверку результата и границы доверия инструменту.
Читать ответUPDATE и DELETE оставляют старые версии строк из-за MVCC. Даже при малом числе актуальных строк таблица и индексы могут содержать много свободного или пока неочищенного пространства.
Читать ответSQL Hibernate можно увидеть через logger org.hibernate.SQL на DEBUG. В Hibernate 6/7 bind-параметры логирует org.hibernate.orm.jdbc.bind на TRACE; категории зависят от версии.
Читать ответДенормализация полезна, когда измеренная стоимость joins или вычислений мешает целевым чтениям. Она хранит производные или дублируемые данные ради быстрого доступа.
Читать ответНачните с сущностей, связей, бизнес-инвариантов и профиля запросов. Затем проектируйте ключи, ограничения, индексы и транзакционные границы под реальные сценарии.
Читать ответЗапрос в условии уже считает записи status='OK' за последние семь дней по каждому user_id и сортирует по убыванию количества. Пользователи без подходящих записей не выводятся.
Читать ответshared_buffers — общий для процессов PostgreSQL cache страниц таблиц и индексов. При обращении страницу ищут в нём, а при отсутствии загружают из файлового слоя.
Читать ответПеречислите БД, с которыми действительно работали, и характер использования: схема, запросы, эксплуатация или только клиентская интеграция. Redis тоже относится к нереляционным хранилищам.
Читать ответНекоторые конфигурации БД способны на 100 тысяч записей в секунду, но гарантировать это без условий нельзя. Решают размер событий, индексы, durability, батчи, репликация и оборудование.
Читать ответTransactional outbox сохраняет бизнес-изменение и запись будущего события в одной транзакции БД. Отдельный relay публикует outbox в брокер после commit.
Читать ответ