Топ-50 запитань і відповідей на інтерв’ю з базою даних (2025)
Ось питання та відповіді на співбесіді в базі даних для нових і досвідчених кандидатів, щоб отримати роботу своєї мрії.
Запитання та відповіді на співбесіді з базовою базою даних для першокурсників
1) Визначте базу даних.
Попередньо організована колекція цифр, відома як дані, називається базою даних.
2) Що таке СУБД?
Системи управління базами даних (СУБД) — це програми, спеціально розроблені для взаємодії користувача з іншими програмами.
👉 Безкоштовне завантаження PDF: База даних (СУБД) Інтерв’ю, запитання та відповіді >>
3) Які різні види взаємодії обслуговуються СУБД?
СУБД обслуговує різні типи взаємодії:
- Визначення даних
- Оновити
- Пошук
- адміністрація
4) Окрема розробка технології баз даних.
Розвиток технології баз даних поділяється на:
- Структура або модель даних
- Навігаційна модель
- SQL/реляційна модель
5) Хто запропонував реляційну модель?
Едгар Ф. Кодд запропонував реляційну модель у 1970 році.
6) Які особливості мови бази даних?
Мова бази даних також може містити такі функції, як:
Спеціальна для СУБД конфігурація та керування системою зберігання
Обчислення для модифікації результатів запиту за допомогою обчислень, як-от підсумовування, підрахунок, усереднення, групування, сортування та перехресне посилання. Застосування обмежень. Інтерфейс прикладного програмування.
7) Що роблять мови баз даних?
Як мови спеціального призначення вони мають:
- Мова визначення даних
- Мова маніпулювання даними
- Мова запитів
8) Визначте модель бази даних.
Модель даних, яка в основному визначає, як дані можуть зберігатися, маніпулювати та організовуватися, а також структуру бази даних логічно називається моделлю бази даних.
9) Що таке SQL?
Мова структурованих запитів (SQL) будучи стандартною мовою ANSI, оновлює базу даних і команди для доступу.
10) Перерахуйте різні зв’язки бази даних.
Різні зв’язки бази даних:
- Один до одного: Одна таблиця, яка має відношення до іншої таблиці, що має подібний тип стовпців.
- Один до багатьох: Дві таблиці, що мають зв’язок первинного та зовнішнього ключів.
- Багато до багатьох: З’єднувальна таблиця, яка має багато таблиць, пов’язаних з багатьма таблицями.
11) Визначте нормалізацію.
Упорядковані дані, позбавлені непослідовних залежностей і надмірності в базі даних, називаються нормалізація.
12) Перелічіть переваги нормалізації бази даних.
Перевагами нормалізації бази даних є:
- Немає повторюваних записів
- Економить місце для зберігання
- Може похвалитися продуктивністю запитів.
13) Дайте визначення денормалізації.
Підвищення продуктивності бази даних, додавання зайвих даних, які, у свою чергу, допомагають позбутися складних даних, називається денормалізація.
14) Визначте DDL і DML.
Управління властивостями та атрибутами бази даних називається мовою визначення даних (DDL).
Маніпулювання даними в базі даних, наприклад вставлення, оновлення, видалення, визначається як мова маніпулювання даними. (DML)
15) Зарахувати деякі команди DDL.
До них відносяться:
СТВОРИТИ:
Create використовується в операторі CREATE TABLE. Синтаксис:
CREATE TABLE [column name] ( [column definitions] ) [ table parameters]
ЗМІНИТИ:
Це допомагає модифікувати існуючий об'єкт бази даних. Його синтаксис:
ALTER objecttype objectname parameters.
ПАДАТИ:
Він руйнує існуючу базу даних, індекс, таблицю або представлення. Його синтаксис:
DROP objecttype objectname.
16) Визначте оператор Union All і Union.
Повний запис двох таблиць — оператор Union All. Окремий запис двох таблиць — Union.
17) Визначте курсор.
Об’єкт бази даних, який допомагає маніпулювати даними рядок за рядком, що представляє набір результатів, називається курсором.
18) Перелічіть типи курсорів.
До них відносяться:
- Динамічний: відображає зміни під час прокручування.
- Статичний: не відображає зміни під час прокручування та працює на записі знімка.
- Набір ключів: видно модифікацію даних без відображення нових даних.
19) Зарахувати типи курсору.
Це типи курсорів:
- Неявний курсор: Оголошується автоматично, щойно виконання SQL відбувається без відома користувача.
- Явний курсор: Визначається PL/SQL який обробляє запит у кількох рядках.
20) Визначте підзапит.
Запит, що міститься в запиті, називається підзапитом.
21) Чому використовується групове речення?
Group-clause використовує сукупні значення, отримані шляхом збору подібних даних.
22) Порівняйте некластерний і кластерний індекс
Обидва мають структуру B-дерева, некластерний індекс має покажчики даних, що дозволяє одній таблиці багато некластеризованих індексів, тоді як кластерний індекс є окремим для кожної таблиці.
23) Визначення агрегатних функцій.
Функції, які працюють із набором значень і повертають одне значення, називаються агрегатними функціями
24) Визначення скалярних функцій.
Скалярна функція залежить від наданого аргументу та повертає єдине значення.
25) Які обмеження можна застосувати під час створення переглядів?
Застосовуються такі обмеження:
- Лише поточна база даних може мати перегляди.
- Ви не зобов’язані змінювати будь-яке обчислене значення в будь-якому конкретному перегляді.
- Integrity константи визначають функціональність INSERT і DELETE.
- Визначення повнотекстового індексу не можна застосувати.
- Тимчасові перегляди не можна створити.
- Тимчасові таблиці не можуть містити подання.
- Немає зв’язку з визначеннями DEFAULT.
- Такі тригери, як INSTEAD OF, пов’язані з представленнями.
26) Дайте визначення «корельованим підзапитам».
«Корелований підзапит» є різновидом підзапиту, але корельований підзапит залежить від іншого запиту для значення, яке повертається. У разі виконання спочатку виконується підзапит, а потім корельований запит.
27) Визначте сховище даних.
Зберігання та доступ до даних із центрального розташування для прийняття деяких стратегічних рішень називається Склад даних. Управління підприємством використовується для управління інформацією, структура якої відома як Data Warehousing.
28) Визначте Join і зарахуйте його типи.
Об’єднання допомагають пояснити зв’язок між різними таблицями. Вони також дозволяють вибирати дані відносно даних в іншій таблиці.
Різні типи:
- INNER JOINS: Посередині залишаються порожні рядки, тоді як дві таблиці з’єднуються більше ніж рівно.
- ЗОВНІШНІ З'ЄДНАННЯ: Поділяється на ліве зовнішнє з’єднання та праве зовнішнє з’єднання. Порожні рядки залишаються на вказаній стороні шляхом з’єднання таблиць на іншій стороні.
Інші з’єднання – це CROSS JOIN, NATURAL JOIN, EQUI JOIN і NON-EQUI JOIN.
29) Що ви маєте на увазі під полюванням на індекс?
Індекси допомагають покращити швидкість, а також продуктивність запитів бази даних. Процедура збільшення колекції індексів називається Index hunting.
30) Як пошук індексів допомагає покращити продуктивність запитів?
Пошук індексів допомагає підвищити швидкість, а також продуктивність запитів до бази даних. Для цього вживаються такі заходи:
- Оптимізатор запитів використовується для координації вивчення запитів із робочим навантаженням і найкращого використання запропонованих на основі цього запитів.
- Індекс, розподіл запитів разом із їх продуктивністю спостерігаються, щоб перевірити ефект.
- Також рекомендується налаштувати бази даних на невелику колекцію проблемних запитів.
Запитання та відповіді на співбесіді з базою даних для досвідчених
31) Перелічіть недоліки запиту.
Недоліками запиту є:
- Без індексів
- Збережені процедури надмірно скомпільовані.
- Тригери та процедури без SET NOCOUNT ON.
- Складні об'єднання, що утворюють неадекватно написаний запит.
- Курсори та тимчасові таблиці демонструють погане представлення.
32) Залучіть способи ефективного кодування транзакцій.
Способи ефективного кодування транзакцій:
- Під час транзакцій заборонено вводити дані користувачами.
- Під час перегляду транзакцій не можна відкривати дані.
- Трансакцій має бути якомога менше.
- Нижчі рівні сегрегації транзакцій.
- Під час здійснення транзакцій має бути доступ до мінімуму даних.
33) Що таке виконавчий план?
Виконавчий план можна визначити як:
- SQL Server кешує зібрану процедуру або план виконання запиту та використовує їх у наступних викликах.
- Важлива функція щодо підвищення продуктивності.
- План виконання даних можна переглядати текстово або графічно.
34) Дайте визначення B-дерев.
Структура даних у формі дерева, яка зберігає відсортовані дані та дозволяє пошук, вставлення, послідовний доступ і видалення в логарифмічному часі.
35) Відрізняйте сканування таблиці від сканування індексу.
Ітерація по всіх рядках таблиці називається скануванням таблиці, тоді як ітерація по всіх елементах індексу визначається як сканування індексу.
36) Що ви маєте на увазі під концепцією коефіцієнта заповнення щодо індексів?
Коефіцієнт заповнення можна визначити як значення, яке визначає відсоток вільного простору на кожній сторінці рівня аркуша, яка має бути упакована даними. 100 — це значення за замовчуванням коефіцієнта заповнення.
37) Дайте визначення фрагментації.
Фрагментацію можна визначити як функцію бази даних сервера, яка сприяє контролю над даними, які користувач зберігає на рівні таблиці.
38) Розрізняйте вкладений цикл, хеш-з’єднання та злиття.
Вкладений цикл (цикл через цикл)
Зовнішній цикл у внутрішньому циклі формується з меншої кількості записів, а потім для окремого входу внутрішній цикл обробляється окремо.
Напр
- Виберіть col1.*, col2.* із coll, col2, де coll.col1=col2.col2;
Його обробка відбувається таким чином:
Цикл For i in (select * from col1).
Для j у циклі (виберіть * із col2, де col2=i.col1).
Відображаються результати;
Кінець петлі;
Кінець петлі;
Кроки вкладеного циклу такі:
- Визначте зовнішній (провідний) стіл
- Призначити внутрішню (керовану) таблицю зовнішній таблиці.
- Для кожного рядка зовнішньої таблиці доступ до рядків внутрішньої таблиці.
Вкладені цикли виконуються від внутрішнього до зовнішнього як:
- зовнішня_петля
- внутрішній_цикл
- Хеш-з'єднання
Під час об’єднання великих таблиць бажано використовувати Hash Join.
Алгоритм хеш-з'єднання поділяється на:
- Збірка: це хеш-таблиця, що містить у пам’яті меншу таблицю.
- Зонд: це хеш-значення хеш-таблиці застосовується до кожного другого елемента рядка.
- Сортування об'єднання
Два незалежних джерела даних об’єднуються в об’єднанні сортування злиттям. Їх продуктивність краща порівняно з вкладеним циклом, коли обсяг даних достатньо великий, але це не добре, оскільки загалом об’єднується хеш. Повну операцію можна розділити на дві частини:
Операція сортування приєднання:
Отримайте перший рядок R1 з input1
Отримайте перший рядок R2 з input2.
Операція злиття приєднання:
'while' не присутній на кінці жодного циклу.
якщо R1 з'єднується з R2
наступний рядок отримує R2 із входу 2
повернення (R1, R2)
інакше, якщо R1 < style=””> наступний рядок отримано з R1 із входу 1
ще
наступний рядок отримується з R2 із входу 2
кінець петлі
39) Що таке розділення бази даних?
Поділ логічної бази даних на незалежні завершені одиниці для покращення її керування, доступності та продуктивності називається розбиттям бази даних.
40) Поясніть важливість розділення.
Розбиття однієї великої таблиці на менші сутності бази даних логічно називається розбиттям бази даних. Його переваги:
- Щоб значно покращити продуктивність запитів у ситуаціях, коли більшість рядків, до яких є інтенсивний доступ, знаходяться в одній секції.
- Доступ до великих частин одного розділу
- Для даних, які використовуються рідко, можна використовувати повільніші та дешевші носії.
41) Визначте систему баз даних.
СУБД разом з базою даних називається системою баз даних.
42) Що ви маєте на увазі під механізмом оцінки запитів?
Механізм оцінки запитів виконує інструкції низького рівня, які генерує компілятор.
43) Визначення інтерпретатора DDL.
Інструкції DDL інтерпретуються та записуються в таблиці, які називаються метаданими.
44) Дайте визначення Atomicity та агрегації.
Atomicity: Це концепція «все або нічого», яка дозволяє користувачеві бути впевненим у незавершених транзакціях, про які потрібно подбати. Дії, пов’язані з незавершеними транзакціями, не виконуються в СУБД.
Агрегування: Зібрані сутності та їхні зв’язки агрегуються в цій моделі. В основному використовується для вираження відносин у відносинах.
45) Перелічіть різні фази транзакції.
Різні фази транзакції:
- Фаза аналізу.
- Повторити фазу
- Фаза скасування
46) Дайте визначення об'єктно-орієнтованої моделі.
Компіляції об’єктів складають цю модель, у якій значення зберігаються в змінних екземплярів, які знаходяться всередині об’єкта. Сам об’єкт містить тіла об’єкта для його роботи, які називаються методами. Об'єкти, що містять однотипні змінні та методи, називаються класами.
47) Визначте сутність.
Його можна визначити як «річ» з незалежним існуванням у реальному світі.
48) Що ви маєте на увазі під типом сутності?
Набір записів зі схожими атрибутами є типами сутностей.
49) Визначте набір сутностей.
Компіляція всіх записів будь-якого конкретного типу в базі даних називається Entity Set.
50) Що ви маєте на увазі під розширенням типу сутності?
Компіляція подібних типів сутностей в один конкретний тип, який групується разом як набір сутностей.
Ці запитання для співбесіди також допоможуть вам у життєдіяльності (усному)