top 90 sql interview questions
90 найпопулярніших запитань та відповідей на інтерв’ю SQL:
Це найпоширеніші та найкорисніші запитання щодо інтерв’ю в SQL для як нових, так і досвідчених кандидатів. Основи передових концепцій SQL викладені в цій статті.
Зверніться до цих питань для швидкого перегляду основних концепцій SQL перед тим, як з’являтися на співбесіду.
Найкращі запитання щодо інтерв’ю SQL
Давайте розпочнемо.
Q # 1) Що таке SQL?
Відповідь: Мова структурованих запитів SQL - це інструмент бази даних, який використовується для створення та доступу до бази даних для підтримки програмних додатків.
Q # 2) Що таке таблиці в SQL?
Відповідь: Таблиця являє собою набір записів та їх інформацію в одному перегляді.
Q # 3) Які різні типи операторів підтримуються SQL?
Відповідь:
Існує 3 типи операторів SQL:
а) DDL (мова визначення даних): Він використовується для визначення структури бази даних, такої як таблиці. Він включає три твердження, такі як CREATE, ALTER і DROP.
Також читайте = >> Підручник зі створення таблиць MySQL
Деякі команди DDL перелічені нижче:
СТВОРИТИ : Використовується для створення таблиці.
CREATE TABLE table_name column_name1 data_type(size), column_name2 data_type(size), column_name3 data_type(size),
ВІК: Таблиця ALTER використовується для модифікації існуючого об'єкта таблиці в базі даних.
ALTER TABLE table_name ADD column_name datatype
АБО
ALTER TABLE table_name DROP COLUMN column_name
b) DML (мова керування даними): Ці твердження використовуються для обробки даних у записах. Загальновживаними операторами DML є INSERT, UPDATE та DELETE.
Оператор SELECT використовується як частковий оператор DML, який використовується для виділення всіх або відповідних записів у таблиці.
в) DCL (мова контролю даних): Ці оператори використовуються для встановлення привілеїв, таких як GRANT та REVOKE, доступ до бази даних для конкретного користувача .
Q # 4) Як ми використовуємо оператор DISTINCT? Яка його користь?
Відповідь: Оператор DISTINCT використовується з оператором SELECT. Якщо запис містить повторювані значення, тоді оператор DISTINCT використовується для вибору різних значень серед повторюваних записів.
Синтаксис:
SELECT DISTINCT column_name(s) FROM table_name;
Q # 5) Які різні статті використовуються в SQL?
Відповідь:
Пункт WHERE: Цей пункт використовується для визначення умови, вилучення та відображення лише тих записів, які відповідають даній умові.
Синтаксис:
SELECT column_name(s) FROM table_name WHERE condition;
Застереження GROUP BY: Він використовується з оператором SELECT для групування результату виконаного запиту за допомогою зазначеного в ньому значення. Він відповідає значенню з назвою стовпця в таблицях і відповідно групує кінцевий результат.
Подальше читання => MySQL Group By Tutorial
Синтаксис:
SELECT column_name(s) FROM table_name GROUP BY column_name;
Речення HAVING: Цей пункт використовується разом із реченням GROUP BY. Він застосовується до кожної групи результатів або до всього результату як єдиної групи. Це дуже схоже на речення WHERE, але єдина відмінність полягає в тому, що ви не можете використовувати його без речення GROUP BY
Синтаксис:
SELECT column_name(s) FROM table_name GROUP BY column_name HAVING condition;
Пункт ORDER BY: Цей пункт використовується для визначення порядку виведення запиту як за зростанням (ASC), так і за спаданням (DESC). Зростаючий (ASC) встановлюється за замовчуванням, але спадаючий (DESC) встановлюється явно.
Синтаксис:
SELECT column_name(s) FROM table_name WHERE condition ORDER BY column_name ASC|DESC;
Застереження USING: Застереження USING застосовується під час роботи з SQL JOIN. Він використовується для перевірки рівності на основі стовпців при об’єднанні таблиць. Його можна використовувати замість речення ON у JOIN.
Синтаксис:
SELECT column_name(s) FROM table_name JOIN table_name USING (column_name);
Q # 6) Чому ми використовуємо обмеження SQL? Які обмеження ми можемо використовувати під час створення бази даних у SQL?
Відповідь: Обмеження використовуються для встановлення правил для всіх записів у таблиці. Якщо якісь обмеження порушуються, це може перервати дію, яка його спричинила.
Обмеження визначаються під час створення самої бази даних за допомогою оператора CREATE TABLE або навіть після того, як таблиця створена один раз за допомогою оператора ALTER TABLE.
Є 5 основних обмежень, що використовуються в SQL, таких як
- НЕ НУЛЬ: Це вказує на те, що стовпець повинен мати якесь значення і не може залишатись НУЛЬНИМ.
- УНІКАЛЬНИЙ: Це обмеження використовується для того, щоб кожен рядок і стовпець мав унікальне значення, і жодне значення не повторюється в жодному іншому рядку чи стовпці.
- ПОЧАТКОВИЙ КЛЮЧ: Це обмеження використовується у поєднанні з обмеженнями NOT NULL та UNIQUE, такими як один або комбінація більше, ніж одного стовпця, щоб ідентифікувати конкретний запис із унікальною ідентичністю.
- ЗОВНІШНІЙ КЛЮЧ: Він використовується для забезпечення цілісності посилань даних у таблиці. Він узгоджує значення в одній таблиці з іншою, використовуючи ПЕРВИННИЙ КЛЮЧ.
- ПЕРЕВІРКА: Це гарантує, чи відповідає значення у стовпцях заданій умові.
Q # 7) Які різні JOINS використовуються в SQL?
Відповідь:
Під час роботи над кількома таблицями в базах даних SQL використовуються 4 основні типи об'єднань:
ВНУТРІШНЄ З'ЄДНАННЯ: Він також відомий як SIMPLE JOIN, який повертає всі рядки з ОБИХ таблиць, коли має принаймні один відповідний стовпець.
Синтаксис:
SELECT column_name(s) FROM table_name1 INNER JOIN table_name2 ON column_name1=column_name2;
Наприклад,
У цьому прикладі ми маємо таблицю Співробітник з такими даними:
Назва другої таблиці - Приєднання.
Введіть такий оператор SQL:
SELECT Employee.Emp_id, Joining.Joining_Date FROM Employee INNER JOIN Joining ON Employee.Emp_id = Joining.Emp_id ORDER BY Employee.Emp_id;
Буде відібрано 4 записи. Результати:
Співробітник і Замовлення таблиці мають відповідність customer_id значення.
ЛІВА ПРИЄДНАННЯ (ЛІВА ВНЕШНЯ ПРИЄДНАННЯ): Це об’єднання повертає всі рядки з таблиці LEFT та відповідні йому рядки з таблиці RIGHT .
Синтаксис:
SELECT column_name(s) FROM table_name1 LEFT JOIN table_name2 ON column_name1=column_name2;
Наприклад,
У цьому прикладі ми маємо таблицю Співробітник з такими даними:
Назва другої таблиці - Приєднання.
Введіть такий оператор SQL:
SELECT Employee.Emp_id, Joining.Joining_Date FROM Employee LEFT OUTER JOIN Joining ON Employee.Emp_id = Joining.Emp_id ORDER BY Employee.Emp_id;
Буде відібрано 4 записи. Ви побачите такі результати:
ПРАВО ПРИЄДНАННЯ (ПРАВО ЗОВНІШНЄ ПРИЄДНАННЯ) Це об'єднання повертає всі рядки з таблиці RIGHT та відповідні їм рядки з таблиці LEFT .
Синтаксис:
SELECT column_name(s) FROM table_name1 RIGHT JOIN table_name2 ON column_name1=column_name2;
Наприклад,
У цьому прикладі ми маємо таблицю Співробітник з такими даними:
Назва другої таблиці - Приєднання.
Введіть такий оператор SQL:
SELECT Employee.Emp_id, Joining.Joining_Date FROM Employee RIGHT JOIN Joining ON Employee.Emp_id = Joining.Emp_id ORDER BY Employee.Emp_id;
Вихід:
Emp_id | Приєднання_Дата |
---|---|
E0012 | 2016/04/18 |
E0013 | 2016/04/19 |
E0014 | 01.05.2016 |
ПОВНЕ ПРИЄДНАННЯ (ПОВНЕ ВНЕШНЄ ПРИЄДНАННЯ): Це об'єднання повертає всі результати, коли є збіг у таблиці ПРАВО або в таблиці ВЛІВО .
Синтаксис:
SELECT column_name(s) FROM table_name1 FULL OUTER JOIN table_name2 ON column_name1=column_name2;
Наприклад,
У цьому прикладі ми маємо таблицю Співробітник з такими даними:
Назва другої таблиці - Приєднання.
Введіть такий оператор SQL:
SELECT Employee.Emp_id, Joining.Joining_Date FROM Employee FULL OUTER JOIN Joining ON Employee.Emp_id = Joining.Emp_id ORDER BY Employee.Emp_id;
Буде відібрано 8 записів. Ось такі результати ви повинні побачити.
ДО Також читайте => Підручник з MySQL
Q # 8) Що таке транзакції та їх контроль?
Відповідь: Транзакцію можна визначити як завдання послідовності, яке виконується над базами даних логічним чином для отримання певних результатів. Такі операції, як створення, оновлення та видалення записів, що виконуються в базі даних, походять від транзакцій.
Простими словами, ми можемо сказати, що транзакція означає групу запитів SQL, що виконуються в записах баз даних.
Існує 4 засоби контролю транзакцій, такі як
- Здійснити : Використовується для збереження всіх змін, внесених за допомогою транзакції.
- Відкат : Використовується для відкочування транзакції. Усі зміни, внесені транзакцією, повертаються назад, і база даних залишається такою, як раніше.
- ВСТАНОВИТИ ОПЕРАЦІЮ : Встановіть назву транзакції.
- SAVEPOINT: Він використовується для встановлення точки, в якій транзакція повинна бути відкочена.
Q # 9) Які властивості транзакції?
Відповідь: Властивості транзакції відомі як властивості ACID. Це:
- Атомність : Забезпечує повноту всіх здійснених операцій. Перевіряє, чи успішно виконана кожна транзакція чи ні. Якщо ні, тоді транзакція переривається в точці відмови, а попередня транзакція відкочується у початковий стан, оскільки зміни скасовуються.
- Послідовність : Гарантує, що всі зміни, внесені в результаті успішних транзакцій, відображаються належним чином у базі даних.
- Ізоляція : Гарантує, що всі транзакції виконуються незалежно, а зміни, внесені однією транзакцією, не відображаються на інших.
- Довговічність : Гарантує, що зміни, внесені в базу даних із здійсненими транзакціями, зберігатимуться, як і після збою системи.
Q # 10) Скільки сукупних функцій доступно в SQL?
Відповідь: Сукупні функції SQL визначають і обчислюють значення з кількох стовпців у таблиці та повертають одне значення.
У SQL є 7 сукупних функцій:
- AVG (): Повертає середнє значення із вказаних стовпців.
- РАХУВАТИ(): Повертає кількість рядків таблиці.
- МАКС. (): Повертає найбільше значення серед записів.
- ХВ (): Повертає найменше значення серед записів.
- SUM (): Повертає суму вказаних значень стовпців.
- СПОЧАТКУ(): Повертає перше значення.
- ОСТАННІЙ (): Повертає останнє значення.
Q # 11) Що таке скалярні функції в SQL?
Відповідь: Скалярні функції використовуються для повернення одного значення на основі вхідних значень.
Скалярні функції такі:
- UCASE (): Перетворює вказане поле у верхній регістр.
- LCASE (): Перетворює вказане поле в нижній регістр.
- MID (): Витягує та повертає символ із текстового поля.
- ФОРМАТ (): Визначає формат відображення.
- LEN (): Вказує довжину текстового поля.
- КРУГЛИЙ (): Округлює значення десяткового поля до числа.
Q # 12) Що таке тригери ?
Відповідь: Тригери в SQL - це вид збережених процедур, що використовуються для створення відповіді на конкретну дію, що виконується в таблиці, наприклад ВСТАВИТИ, ОНОВИТИ або ВИДАЛИТИ. Ви можете явно викликати тригери в таблиці в базі даних.
Дія та Подія - два основні компоненти тригерів SQL. Коли виконуються певні дії, подія відбувається у відповідь на цю дію.
Синтаксис:
CREATE TRIGGER name BEFORE (event (OR..)} ON table_name (FOR (EACH) ROW) EXECUTE PROCEDURE functionname {arguments}
Q # 13) Що таке View у SQL?
Відповідь: Вигляд можна визначити як віртуальну таблицю, яка містить рядки та стовпці з полями з однієї або декількох таблиць.
S синтаксис:
CREATE VIEW view_name AS SELECT column_name(s) FROM table_name WHERE condition
Q # 14) Як ми можемо оновити подання?
Відповідь: SQL CREATE і REPLACE можна використовувати для оновлення подання.
Виконайте наведений нижче запит, щоб оновити створений вигляд.
Синтаксис:
CREATE OR REPLACE VIEW view_name AS SELECT column_name(s) FROM table_name WHERE condition
Q # 15) Поясніть, як працюють привілеї SQL?
Відповідь: Команди SQL GRANT та REVOKE використовуються для реалізації привілеїв у багатокористувацьких середовищах SQL. Адміністратор бази даних може надавати або відкликати привілеї користувачам або користувачам об'єктів бази даних, використовуючи такі команди, як SELECT, INSERT, UPDATE, DELETE, ALL тощо.
GRANT Command : Ця команда використовується для надання доступу до бази даних іншим користувачам, крім адміністратора.
Синтаксис:
GRANT privilege_name ON object_name TO PUBLIC (WITH GRANT OPTION);
У наведеному вище синтаксисі опція GRANT вказує, що користувач може надати доступ також іншому користувачеві.
Команда REVOKE : Ця команда використовується для заборони бази даних або заборони доступу до об'єктів бази даних.
Синтаксис:
REVOKE privilege_name ON object_name FROM PUBLIC;
Q # 16) Скільки типів привілеїв доступні в SQL?
Відповідь: У SQL існує два типи привілеїв, таких як
- Системні привілеї: Системні привілеї мають справу з об’єктом певного типу і надають користувачам право виконувати одну або кілька дій над ним. Ці дії включають виконання адміністративних завдань, ЗМІНИТИ БУДЬ-ЯКИЙ ІНДЕКС, ЗМІНИТИ БУДЬ-ЯКУ ГРУПУ КЕШУ СТВОРИТИ / ЗМІНИТИ / ВИДАЛИТИ СТОЛ, СТВОРИТИ / ЗМІНИТИ / ВИДАЛИТИ ПЕРЕГЛЯД тощо
- Привілей об'єкта: Це дозволяє виконувати дії над об’єктом або об’єктом іншого користувача (користувачів), а саме. таблиця, подання, індекси тощо. Деякі привілеї об’єкта: EXECUTE, INSERT, UPDATE, DELETE, SELECT, FLUSH, LOAD, INDEX, REFERENCES тощо.
Q # 17) Що таке SQL Injection?
Відповідь: SQL Injection - це тип техніки атаки на базу даних, коли шкідливі оператори SQL вставляються в поле введення бази даних таким чином, що після її виконання база даних піддається зловмисникові для атаки. Цей прийом зазвичай використовується для атаки програм, керованих даними, для доступу до конфіденційних даних та виконання адміністративних завдань у базах даних.
Наприклад,
SELECT column_name(s) FROM table_name WHERE condition;
Питання # 18) Що таке SQL Sandbox у SQL Server?
яка найкраща послуга електронної пошти для використання
Відповідь: SQL Sandbox - це безпечне місце в середовищі сервера SQL, де виконуються ненадійні сценарії. Існує 3 типи пісочниці SQL:
- Пісочниця безпечного доступу: Тут користувач може виконувати операції SQL, такі як створення збережених процедур, тригерів тощо, але не може мати доступу до пам'яті, а також не може створювати файли.
- Пісочниця зовнішнього доступу: Користувачі можуть отримати доступ до файлів, не маючи права маніпулювати розподілом пам'яті.
- Пісочниця небезпечного доступу: Він містить ненадійні коди, де користувач може мати доступ до пам'яті.
Q # 19) У чому різниця між SQL та PL / SQL?
Відповідь: SQL - це мова структурованих запитів для створення та доступу до баз даних, тоді як PL / SQL постачається з процедурними концепціями мов програмування.
Q # 20) Яка різниця між SQL та MySQL?
Відповідь: SQL - це мова структурованих запитів, яка використовується для маніпулювання та доступу до реляційної бази даних. З іншого боку, сам MySQL є реляційною базою даних, яка використовує SQL як стандартну мову бази даних.
Q # 21) Для чого використовується функція NVL?
Відповідь: Функція NVL використовується для перетворення нульового значення у його фактичне значення.
Q # 22) Що таке декартовий продукт таблиці?
Відповідь: Вихід Cross Join називається декартовим продуктом. Він повертає рядки, що поєднують кожен рядок з першої таблиці з кожним рядком другої таблиці. Наприклад, якщо ми об'єднаємо дві таблиці, що мають 15 і 20 стовпців, декартовим добутком двох таблиць буде 15 × 20 = 300 рядків.
Q # 23) Що ви маєте на увазі під підзапитом?
Відповідь: Запит в іншому запиті називається підзапитом. Підзапит називається внутрішнім запитом, який повертає вихідні дані, які будуть використані іншим запитом.
Q # 24) Скільки операторів порівняння рядків використовується під час роботи з підзапитом?
Відповідь: Існують 3-рядкові оператори порівняння, які використовуються в таких підзапитах, як IN, ANY та ALL.
Q # 25) Яка різниця між кластерними та некластеризованими індексами?
Відповідь: Різниця між ними полягає в наступному:
- Одна таблиця може мати лише один кластерний індекс, але кілька некластеризованих індексів.
- Кластерні індекси можна читати швидко, а не некластеризовані індекси.
- Кластеризовані індекси фізично зберігають дані в таблиці або поданні, тоді як некластеризовані індекси не зберігають дані в таблиці, оскільки вона має окрему структуру від рядка даних.
Q # 26) Яка різниця між DELETE та TRUNCATE?
Відповідь: Відмінності такі:
- Основна різниця в обох - це команда DELETE - команда DML, а команда TRUNCATE - DDL.
- Команда DELETE використовується для видалення певного рядка з таблиці, тоді як команда TRUNCATE використовується для видалення всіх рядків з таблиці.
- Ми можемо використовувати команду DELETE з реченням WHERE, але не можемо використовувати команду TRUNCATE з нею.
Q # 27) Яка різниця між DROP та TRUNCATE?
Відповідь: TRUNCATE видаляє всі рядки з таблиці, які неможливо отримати назад, DROP видаляє всю таблицю з бази даних, а також не може бути повернутий назад.
Q # 28) Як написати запит, щоб показати деталі студента з таблиці Студенти, чия
ім'я починається з K?
Відповідь: Запит:
SELECT * FROM Student WHERE Student_Name like ‘K%’;
Тут оператор «подобається» використовується для відповідності шаблону.
Q # 29) У чому різниця між вкладеним підзапитом та корельованим підзапитом?
Відповідь: Підзапит у межах іншого підзапиту називається вкладеним підзапитом. Якщо вихід підзапиту залежить від значень стовпців батьківської таблиці запитів, тоді запит називається відповідним підзапитом.
SELECT adminid(SELEC Firstname+' '+Lastname FROM Employee WHERE empid=emp. adminid)AS EmpAdminId FROM Employee;
Результатом запиту є дані про працівника з таблиці Employee.
Q # 30) Що таке нормалізація? Скільки існує форм нормалізації?
Відповідь: Нормалізація використовується для організації даних таким чином, що надмірність даних ніколи не відбуватиметься в базі даних та уникатиме аномалій вставки, оновлення та видалення.
Існує 5 форм нормалізації:
- Перша звичайна форма (1NF): Він видаляє всі повторювані стовпці з таблиці. Він створює таблицю для пов'язаних даних і визначає унікальні значення стовпців.
- Перша звичайна форма (2NF): Дотримується 1NF і створює та розміщує підмножини даних в окремій таблиці та визначає взаємозв'язок між таблицями за допомогою первинного ключа.
- Третя нормальна форма (3NF): Дотримується 2NF і видаляє ті стовпці, які не пов’язані за допомогою первинного ключа.
- Четверта нормальна форма (4NF): Дотримується 3NF і не визначає багатозначні залежності. 4NF також відомий як BCNF.
Q # 31) Що таке відносини? Скільки типів стосунків?
Відповідь: Зв’язок можна визначити як зв’язок між кількома таблицями в базі даних.
Існує 4 типи відносин:
- Відносини один до одного
- Відносини багато до одного
- Відносини багато до багатьох
- Відносини один до багатьох
Q # 32) Що ви маєте на увазі під збереженими процедурами? Як ми його використовуємо?
Відповідь: Зберігається процедура - це сукупність операторів SQL, які можна використовувати як функцію доступу до бази даних. Ми можемо створити ці збережені процедури раніше, ніж використовувати їх, і можемо виконувати їх де завгодно, застосовуючи до цього якусь умовну логіку. Збережені процедури також використовуються для зменшення мережевого трафіку та підвищення продуктивності.
Синтаксис:
CREATE Procedure Procedure_Name ( //Parameters ) AS BEGIN SQL statements in stored procedures to update/retrieve records END
Q # 33) Сформулюйте деякі властивості реляційних баз даних?
Відповідь: Властивості такі:
- У реляційних базах даних кожен стовпець повинен мати унікальну назву.
- Послідовність рядків і стовпців у реляційних базах даних незначна.
- Усі значення є атомними, і кожен рядок унікальний.
Q # 34) Що таке вкладені тригери?
Відповідь: Тригери можуть реалізовувати логіку модифікації даних за допомогою операторів INSERT, UPDATE та DELETE. Ці тригери, що містять логіку модифікації даних та знаходять інші тригери для модифікації даних, називаються вкладеними тригерами.
Q # 35) Що таке курсор?
Відповідь: Курсор - це об'єкт бази даних, який використовується для обробки даних послідовно.
Курсор виконує кроки, наведені нижче:
- Оголосіть курсор
- Відкритий курсор
- Отримати рядок із курсору
- Обробіть рядок
- Закрити курсор
- Виділити курсор
Q # 36) Що таке Collation?
Відповідь: Сортування - це набір правил, які перевіряють спосіб сортування даних шляхом їх порівняння. Такі, як дані символів, зберігаються з використанням правильної послідовності символів разом із чутливістю до регістру, типом та акцентом.
Q # 37) Що нам потрібно перевірити під час тестування баз даних?
Відповідь: Під час тестування баз даних необхідно перевірити наступне:
- Підключення до бази даних
- Перевірка обмежень
- Обов’язкове поле програми та його розмір
- Отримання та обробка даних за допомогою операцій DML
- Зберігаються процедури
- Функціональний потік
Q # 38) Що таке тестування білої скриньки бази даних?
Відповідь: Тестування бази даних White Box передбачає:
- Узгодженість бази даних та властивості ACID
- Тригери бази даних та логічні подання
- Висвітлення рішення, висвітлення стану та висвітлення
- Таблиці баз даних, модель даних та схема баз даних
- Правила цілісності посилань
Q # 39) Що таке тестування бази даних Black Box?
Відповідь: Тестування бази даних Black Box передбачає:
- Зіставлення даних
- Дані зберігаються та отримуються
- Використання методів тестування «чорної скриньки», таких як розподіл еквівалентності та аналіз граничних значень (BVA)
Q # 40) Що таке індекси в SQL?
Відповідь: Індекс можна визначити як спосіб швидшого отримання даних. Ми можемо визначати індекси за допомогою операторів CREATE.
Синтаксис:
CREATE INDEX index_name ON table_name (column_name)
Крім того, ми також можемо створити унікальний індекс, використовуючи такий синтаксис:
CREATE UNIQUE INDEX index_name ON table_name (column_name)
ОНОВЛЕННЯ: Ми додали ще кілька коротких питань для практики.
Q # 41) Що означає SQL?
Відповідь: SQL розшифровується як Мова Структурованих Запитів .
Q # 42) Як виділити всі записи з таблиці?
Відповідь: Для вибору всіх записів з таблиці нам потрібно використовувати такий синтаксис:
Select * from table_name;
Q # 43) Визначте об'єднання та назвіть різні типи об'єднань?
Відповідь: Ключове слово join використовується для отримання даних із двох або більше пов’язаних таблиць. Він повертає рядки, де є принаймні одна відповідність в обох таблицях, включених до об’єднання. Детальніше читайте тут .
Тип приєднання:
- Правильне приєднання
- Зовнішнє приєднання
- Повне приєднання
- Перехресне приєднання
- Самостійне приєднання.
Q # 44) Який синтаксис для додавання запису до таблиці?
Відповідь: Для додавання запису в таблицю використовується синтаксис INSERT.
Наприклад,
INSERT into table_name VALUES (value1, value2..);
Q # 45) Як додати стовпець до таблиці?
Відповідь: Щоб додати ще один стовпець у таблицю, використовуйте таку команду:
ALTER TABLE table_name ADD (column_name);
Рекомендуємо прочитати = >> Як додати стовпець до таблиці в MySQL
Q # 46) Визначте оператор SQL DELETE.
Відповідь: DELETE використовується для видалення рядка або рядків з таблиці на основі вказаної умови.
Основний синтаксис такий:
DELETE FROM table_name WHERE
Q # 47) Визначте COMMIT?
Відповідь: COMMIT зберігає всі зміни, внесені операторами DML.
Q # 48) Що таке Первинний ключ?
Відповідь: Первинний ключ - це стовпець, значення якого однозначно ідентифікують кожен рядок таблиці. Значення первинного ключа ніколи не можна використовувати повторно.
Q # 49) Що таке зовнішні ключі?
Відповідь: Коли поле первинного ключа таблиці додається до пов’язаних таблиць, щоб створити загальне поле, яке пов’язує дві таблиці, воно викликає зовнішній ключ в інших таблицях. Обмеження зовнішнього ключа забезпечують цілісність посилань.
Q # 50) Що таке обмеження CHECK?
Відповідь: Обмеження CHECK використовується для обмеження значень або типу даних, які можна зберігати в стовпці. Вони використовуються для забезпечення цілісності домену.
Q # 51) Чи можливо, щоб таблиця мала більше одного зовнішнього ключа?
Відповідь: Так, таблиця може мати багато зовнішніх ключів, але лише один первинний ключ.
Q # 52) Які можливі значення для поля даних BOOLEAN?
Відповідь: Для поля даних BOOLEAN можливі два значення: -1 (true) та 0 (false).
Q # 53) Що таке збережена процедура?
Відповідь: Збережена процедура - це набір запитів SQL, які можуть приймати вхідні дані і відправляти назад вихідні дані.
Q # 54) Що таке ідентичність у SQL?
Відповідь: Стовпець ідентичності, в якому SQL автоматично генерує числові значення. Ми можемо визначити значення початку та приросту стовпця ідентичності.
Q # 55) Що таке нормалізація?
Відповідь: Процес проектування таблиці для мінімізації надмірності даних називається нормалізацією. Нам потрібно розділити базу даних на дві або більше таблиці та визначити взаємозв'язок між ними.
Q # 56) Що таке тригер?
Відповідь: Тригер дозволяє нам виконувати пакет SQL-коду, коли відбувається подія таблиці (команди INSERT, UPDATE або DELETE виконуються щодо певної таблиці).
Q # 57) Як вибрати випадкові рядки з таблиці?
Відповідь: Використовуючи речення SAMPLE, ми можемо вибрати випадкові рядки.
Наприклад,
SELECT * FROM table_name SAMPLE(10);
Q # 58) Який порт TCP / IP працює на SQL Server?
Відповідь: За замовчуванням SQL Server працює на порту 1433.
Q # 59) Написати запит SQL SELECT, який повертає кожне ім'я лише один раз із таблиці?
Відповідь: Щоб отримати результат як кожне ім'я лише один раз, нам потрібно використовувати ключове слово DISTINCT.
SELECT DISTINCT name FROM table_name;
Q # 60) Поясніть DML та DDL?
Відповідь: DML розшифровується як мова керування даними. INSERT, UPDATE та DELETE - це оператори DML.
DDL розшифровується як Мова визначення даних. CREATE, ALTER, DROP, RENAME - це оператори DDL.
Q # 61) Чи можемо ми перейменувати стовпець у результатах запиту SQL?
Відповідь: Так, використовуючи наступний синтаксис, ми можемо це зробити.
SELECT column_name AS new_name FROM table_name;
Q # 62) Вкажіть порядок SQL SELECT?
Відповідь: Порядок пропозицій SQL SELECT такий: SELECT, FROM, WHERE, GROUP BY, HAVING, ORDER BY. Обов’язковими є лише пропозиції SELECT та FROM.
Q # 63) Припустимо, що стовпець Student має два стовпці, Name і Marks. Як отримати імена та позначки трьох найкращих учнів.
Відповідь: ВИБЕРІТЬ Ім'я, Позначки ВІД студента s1 де 3<= (SELECT COUNT(*) FROM Students s2 WHERE s1.marks = s2.marks)
Q # 64) Що таке коментарі SQL?
Відповідь: Коментарі SQL можна вставити, додавши два послідовні дефіси (-).
Q # 65) Різниця між командами TRUNCATE, DELETE та DROP?
Відповідь:
- ВИДАЛИТИ видаляє деякі або всі рядки з таблиці залежно від умови. Його можна відкотити назад.
- ЗРУЧИТИ видаляє ВСІ рядки з таблиці шляхом зняття розподілу сторінок пам'яті. Операцію неможливо відкотити
- КРАПЛЕННЯ команда повністю видаляє таблицю з бази даних.
Q # 66) Які властивості транзакції?
Відповідь: Як правило, ці властивості називають властивостями кислоти. Вони є:
- Атомність
- Послідовність
- Ізоляція
- Довговічність.
Q # 67) Що ви маєте на увазі під ROWID?
Відповідь: Це псевдостовбець довжиною 18 символів, прикріплений до кожного рядка таблиці.
Q # 68) Визначте UNION, MINUS, UNION ALL, INTERSECT?
Відповідь:
- МІНУС - повертає всі окремі рядки, вибрані першим запитом, але не другим.
- СОЮЗ - повертає всі окремі рядки, вибрані будь-яким запитом
- СОЮЗ ВСІХ - повертає всі рядки, вибрані за будь-яким запитом, включаючи всі дублікати.
- ІНТЕРСЕКТ - повертає всі окремі рядки, обрані обома запитами.
Q # 69) Що таке транзакція?
Відповідь: Транзакція - це послідовність коду, яка працює проти бази даних. Він переносить базу даних з одного послідовного стану в інший.
Q # 70) Яка різниця між обмеженнями UNIQUE та PRIMARY KEY?
Відповідь: Різниці такі:
- У таблиці може бути лише один ОСНОВНИЙ КЛЮЧ, тоді як УНІКАЛЬНИХ ключів може бути будь-яка кількість.
- Первинний ключ не може містити значення Null, тоді як унікальний ключ може містити значення Null.
Q # 71) Що таке складений первинний ключ?
Відповідь: Первинний ключ, створений у кількох стовпцях, називається складеним первинним ключем.
Q # 72) Що таке індекс?
Відповідь: Індекс - це спеціальна структура, пов’язана з таблицею для пришвидшення виконання запитів. Індекс можна створити в одному або декількох стовпцях таблиці.
Q # 73) Що таке підзапит?
Відповідь: Підзапит - це підмножина операторів select, повернені значення яких використовуються в умовах фільтрації основного запиту.
Q # 74) Що ви маєте на увазі під оптимізацією запитів?
Відповідь: Оптимізація запитів - це процес, при якому система баз даних порівнює різні стратегії запитів та відбирає запит із найменшими витратами.
Q # 75) Що таке Collation?
Відповідь: Набір правил, що визначають, як зберігаються дані, як можна обробляти чутливість до регістру та символ Кана тощо.
Q # 76) Що таке референсна цілісність?
Відповідь: Набір правил, які обмежують значення одного або декількох стовпців таблиць на основі значень первинного ключа або унікального ключа таблиці, на яку посилаються.
Q # 77) Що таке функція Case?
Відповідь: Case полегшує тип логіки if-then-else у SQL. Він обчислює список умов і повертає одне з безлічі можливих виразів результату.
Q # 78) Визначте тимчасову таблицю?
Відповідь: Тимчасова таблиця - це структура тимчасового сховища для тимчасового зберігання даних.
Q # 79) Як ми можемо уникнути дублювання записів у запиті?
Відповідь: Використовуючи ключове слово DISTINCT, можна уникнути дублювання записів у запиті.
Q # 80) Поясніть різницю між Перейменувати та Псевдонім?
Відповідь: Перейменувати - це постійне ім'я, яке дається таблиці або стовпцю, тоді як Псевдонім - тимчасове ім'я, яке дається таблиці або стовпцю.
Q # 81) Що таке погляд?
Відповідь: Представлення - це віртуальна таблиця, яка містить дані однієї або декількох таблиць. Представлення даних обмежують доступ до даних до таблиці, вибираючи лише необхідні значення та спрощуючи складні запити.
Q # 82) Які переваги Views?
Відповідь: Перевагами переглядів є:
- Представлення даних обмежують доступ до даних, оскільки подання може відображати вибіркові стовпці з таблиці.
- Представлення можна використовувати для створення простих запитів для отримання результатів складних запитів. Наприклад, подання можуть використовуватися для запиту інформації з декількох таблиць, не знаючи користувача.
Q # 83) Перелічіть різні привілеї, які користувач може надати іншому користувачеві?
Відповідь: ВИБІР, ПІДКЛЮЧЕННЯ, РЕСУРСИ.
Q # 84) Що таке схема?
Відповідь: Схема - це сукупність об’єктів бази даних Користувача.
Q # 85) Що таке таблиця?
Відповідь: Таблиця - це основна одиниця зберігання даних у системі управління базами даних. Дані таблиці зберігаються в рядках і стовпцях.
Q # 86) Чи містить подання View дані?
Відповідь: Ні, подання - це віртуальні структури.
Q # 87) Чи може подання базуватися на іншому поданні?
Відповідь: Так, A View базується на іншому View.
Q # 88) Яка різниця між реченням HAVING та реченням WHERE?
Відповідь: Обидва задають умову пошуку, але речення Have використовується лише з оператором SELECT і зазвичай використовується з реченням GROUP BY.
Якщо речення GROUP BY не використовується, тоді, поводячись як лише речення WHERE.
Q # 89) Яка різниця між місцевими та глобальними тимчасовими таблицями?
Відповідь: Якщо визначено всередині складеного оператора, локальна тимчасова таблиця існує лише на час дії цього оператора, але глобальна тимчасова таблиця постійно існує в БД, але її рядки зникають, коли з'єднання закрито.
Q # 90) Що таке CTE?
Відповідь: Вираз CTE або загальна таблиця - це вираз, який містить тимчасовий набір результатів, який визначено в операторі SQL.
Висновок
SQL є важливим компонентом системи баз даних. Володіння знаннями бази даних разом із поняттями SQL, безумовно, буде корисним для того, щоб зламати інтерв’ю для відповідного профілю.
Окрім деяких основних концепцій, є кілька прихованих фактів, які залишаються невидимими і впливають на ваш виступ в інтерв'ю. У цьому підручнику я намагався згадати деякі з тих понять, які здаються невеликими, але ними не слід нехтувати.
Сподіваємось, у цій статті ви знайдете відповіді на найпоширеніші запитання щодо інтерв’ю SQL. Знання SQL є обов'язковим для будь-якого тестувальника, і ця стаття допоможе вам у підготовці співбесіди.
Подальше читання => Все про тестування баз даних
Рекомендована література
- Запитання та відповіді на інтерв’ю
- Найпопулярніші запитання щодо інтерв’ю Oracle: Основні питання Oracle, SQL, PL / SQL
- 30 найважливіших запитань та відповідей на інтерв’ю PL / SQL у 2021 році
- Запитання та відповіді на інтерв’ю для тестування ETL
- Найпопулярніші запитання та відповіді на інтерв’ю Teradata
- Деякі хитрі ручні тестування Питання та відповіді
- 25 найкращих запитань та відповідей на інтерв’ю для спритного тестування
- Запитання для інтерв’ю з Spock (найпопулярніші)