Питання на співбесіді з баз даних (Junior) з відповідями
75 запитань для співбесіди з теми Бази даних (Junior) - з правильними відповідями, поясненнями й посиланнями на документацію.
Пройти цей тест- 1.Що таке реляційна база даних?
- 2.Що таке первинний ключ?
- 3.Що таке зовнішній ключ?
- 4.Як змоделювати зв'язок «багато до багатьох», наприклад студентів і курси?
- 5.Що робить обмеження
NOT NULL? - 6.Чим
UNIQUEвідрізняється відPRIMARY KEY? - 7.Що робить обмеження
CHECK? - 8.Як отримати автоінкрементний стовпець ID у сучасному PostgreSQL?
- 9.Яка поширена причина використовувати UUID замість цілих чисел, що зростають, як ID?
- 10.Який тип стовпця найкращий для грошових сум?
- 11.Який запит поверне імена користувачів, старших за 30, відсортовані за іменем?
- 12.У якому логічному порядку база обчислює частини запиту?
- 13.Що поверне
SELECT DISTINCT city FROM users? - 14.Що поверне
WHERE email = NULL? - 15.Чим
COUNT(*)відрізняється відCOUNT(phone)? - 16.Що знайде
WHERE name LIKE 'An%'? - 17.Як отримати 10 найновіших замовлень?
- 18.Що входить у
WHERE price BETWEEN 10 AND 20? - 19.Що означає
WHERE status IN ('new', 'paid')? - 20.Чому в коді застосунку часто уникають
SELECT *? - 21.Що повертає
INNER JOIN? - 22.Що повертає
LEFT JOIN? - 23.Як знайти користувачів, у яких немає замовлень?
- 24.Що поверне
CROSS JOINтаблиці з 10 рядків і таблиці з 5 рядків? - 25.У користувача 3 замовлення і 2 адреси. Ви з'єднуєте
users,ordersіaddressesзаuser_id. Скільки рядків вийде для цього користувача? - 26.Навіщо в JOIN використовують псевдоніми таблиць на кшталт
uіo? - 27.Що поверне цей запит?
- 28.Чим
WHEREвідрізняється відHAVING? - 29.Чому
SELECT city, name, COUNT(*) FROM users GROUP BY cityпадає? - 30.Які агрегатні функції є стандартними в SQL?
- 31.Чим
UNIONвідрізняється відUNION ALL? - 32.Що станеться після
UPDATE users SET active = false;безWHERE? - 33.Яка інструкція додає рядок?
- 34.Чим
DELETE FROM logsвідрізняється відTRUNCATE logs? - 35.Чим DDL відрізняється від DML?
- 36.Що таке «м'яке видалення» (soft delete)?
- 37.Яка головна мета нормалізації бази даних?
- 38.Яка таблиця порушує першу нормальну форму (1НФ)?
- 39.Що таке денормалізація?
- 40.Який тип зазвичай використовувати для часових міток у PostgreSQL?
- 41.Чим
varchar(255)відрізняється відtextу PostgreSQL? - 42.Що таке представлення (view)?
- 43.Навіщо потрібен індекс?
- 44.Чому не варто додавати індекс на кожен стовпець?
- 45.Що таке транзакція?
- 46.Що означає ACID?
- 47.Що гарантує «довговічність» (durability)?
- 48.Що таке SQL-ін'єкція?
- 49.Чому застосунок має під'єднуватися до бази користувачем з обмеженими правами?
- 50.Що таке міграція бази даних?
- 51.Що таке ORM?
- 52.Чому треба регулярно перевіряти відновлення з резервних копій, а не лише робити їх?
- 53.Яка головна ідея документної бази даних, як-от MongoDB?
- 54.Для чого найчастіше використовують Redis у вебзастосунках?
- 55.Коли реляційна база зазвичай кращий вибір за замовчуванням?
- 56.Що означає «без схеми» (schemaless) для документної бази?
- 57.Що робить
EXPIRE session:42 3600у Redis? - 58.Що таке підзапит?
- 59.Що повертає
COALESCE(nickname, name)? - 60.Що робить
CASEу запиті? - 61.Що робить
INSERT ... RETURNING idу PostgreSQL? - 62.Що робить
OFFSET 20 LIMIT 10? - 63.Що таке «схема» в сенсі
CREATE SCHEMAу PostgreSQL? - 64.Чому не варто зберігати великі файли (зображення, відео) прямо в рядках бази?
- 65.Для чого найкраще підходить SQLite?
- 66.Який результат
SELECT 10 + NULL? - 67.Що таке складений первинний ключ?
- 68.Що робить
ON DELETE CASCADEна зовнішньому ключі? - 69.Що робить
created_at timestamptz NOT NULL DEFAULT now()? - 70.Як додати стовпець до наявної таблиці?
- 71.Як отримати 5 міст з найбільшою кількістю користувачів?
- 72.Таблиця
employees(id, name, manager_id)зберігає керівника кожного працівника. Як вивести працівників з іменем їхнього керівника? - 73.Чи створює PostgreSQL автоматично індекс на стовпці зовнішнього ключа, як-от
orders.user_id? - 74.Що перевіряє
EXISTS? - 75.Де опиняються NULL при
ORDER BY last_login ASCу PostgreSQL?