Проектирование схемы библиотеки и написание SQL‑запросов
Нужны книги, авторы, читатели, связь book_authors и история выдач loans. Уникальный частичный индекс запрещает две открытые выдачи одной книги.
Читать ответПодготовка к интервью
Разбирайте реальные вопросы, сверяйтесь с подробными ответами и готовьтесь по технологиям и компаниям.
Проверьте, насколько резюме подходит выбранной позиции, и получите рекомендации по улучшению.
Каталог
Нужны книги, авторы, читатели, связь book_authors и история выдач loans. Уникальный частичный индекс запрещает две открытые выдачи одной книги.
Читать ответСреди перечисленных операторов логический порядок: WHERE → GROUP BY → HAVING → ORDER BY → OFFSET → LIMIT. Это не фиксированный физический план.
Читать ответЛогически сначала формируется FROM/JOIN, затем WHERE, GROUP BY и HAVING; после SELECT и сортировки применяются OFFSET и LIMIT.
Читать ответВыберите последнюю запись каждого point_id, а полный список точек присоедините слева. Тогда точка 6 без тарифа тоже будет в результате с NULL, а не исчезнет.
Читать ответРасскажите, где версия схемы была зафиксирована, как миграции проходили ревью и кто отвечал за их запуск. Обычно изменения схемы хранят вместе с кодом, но важно описать именно ваш процесс.
Читать ответПример транзакции — создание заказа и резервирование доступного остатка товара. Либо обе операции фиксируются, либо при ошибке обе отменяются.
Читать ответВ коде есть ошибки типов, небезопасный SQL, нет атомарности выплаты и идемпотентности, а счётчик имеет гонку. Исправление требует согласованной транзакции и безопасной публикации событий.
Читать ответN+1 — ситуация, когда после одного запроса списка выполняется ещё по запросу для каждого элемента. Число обращений к БД растёт вместе с размером списка.
Читать ответСгруппируйте строки по имени и оставьте группы, содержащие SQL и минимум два разных языка. Для приведённых данных запрос вернёт Nick и Ivan.
Читать ответВ PostgreSQL default — Read Committed; Read Uncommitted работает как Read Committed. Repeatable Read использует устойчивый снимок, Serializable дополнительно выявляет опасные зависимости.
Читать ответЭто набор вопросов по Go, сети, БД и рабочему процессу. Технические ответы ниже сгруппированы по номерам; вопросы о личном опыте требуют ваших фактов.
Читать ответВ Go синхронный сетевой API обычно паркует горутину через netpoll, позволяя потоку выполнять другую работу. Но настоящий блокирующий syscall или cgo может заблокировать поток ОС.
Читать ответ