Вступ до запитань та відповідей щодо інтерв'ю Oracle

Усі повинні освоїти SQL. Попит на SQL ще знижується, а досвід SQL високо цінується на ринку. Існує безліч постачальників, що пропонують рішення для баз даних, причому Oracle є найпопулярнішим у світі для виконання OLTP (Інтернет-транзакцій) та DW (Склад даних).

Тож якщо ви нарешті знайшли роботу своєї мрії в Oracle, але цікавитесь, як зламати інтерв'ю Oracle і що може бути ймовірним питанням інтерв'ю Oracle за 2019 рік. Маючи це на увазі, ми розробили найпоширеніші запитання та відповіді щодо інтерв'ю Oracle за 2018 рік, які допоможуть вам досягти успіху в інтерв’ю.

У цій статті ми розглянемо найпоширеніші запитання щодо інтерв'ю Oracle 2019, які в основному задаються в інтерв'ю. Ці питання поділяються на дві частини:

Частина 1 - Питання щодо інтерв'ю Oracle (основні)

Ця перша частина охоплює основні питання та відповіді на інтерв'ю Oracle

1. Знайдіть помилку із наведеного нижче SQL-запиту?

Відповідь:
SELECT Name, YEAR(BirthDate) AS BirthYear
FROM StudentDetails
WHERE BirthYear >= 1998;

Цей запит призведе до помилки в пункті WHERE. Хоча псевдонім вказаний у пункті SELECT, він не видно у пункті WHERE. Правильний код можна записати так:
SELECT Name, YEAR(BirthDate) AS BirthYear
FROM StudentDetails
WHERE YEAR(BirthDate) >= 1998;

2. Що таке Семіджойн? Як реалізувати його в SQL?

Відповідь:
Semijoin повертає записи з лівої таблиці, які відповідають правій таблиці. Навіть якщо у правій таблиці є декілька записів, які відповідають, Semijoin повертає один запис лівої таблиці. Це запобігає дублюванню. Semijoin може бути реалізований за допомогою пункту WHERE EXISTS.

3. Що таке PL / SQL?

Відповідь:
PL / SQL - це процедурне розширення мови над SQL, що надається Oracle. Це полегшує декларування змінних, функцій та умовних операторів у синтаксисі SQL, тим самим надаючи розробникові більше свободи та легкості в розробці складних запитів.

Перейдемо до наступних запитань щодо інтерв'ю Oracle.

4. Як поводитися з помилками в PL / SQL?

Відповідь:
У PL / SQL умова помилки називається винятком, і помилки PL / SQL обробляються за допомогою блоку EXCEPTION. Синтаксис для обробки винятків написаний нижче:
DECLARE

BEGIN

EXCEPTION
WHEN exception1 THEN

WHEN exception2 THEN

WHEN others THEN

END;

5. Які обмеження? Як додати назване обмеження PRIMARY KEY у SQL?

Відповідь:
Це найпоширеніші запитання щодо інтерв'ю Oracle, задані в інтерв'ю. Обмеження - це правила, визначені над даними. Імене обмеження для первинного ключа можна додати двома способами:
1. Під час створення таблиці:
CREATE TABLE Employees (
Eid int NOT NULL,
Name varchar(255) NOT NULL,
Salary number(8),
Age int,
CONSTRAINT PK_ID PRIMARY KEY (Eid)
);

2. У заяві Alter
ALTER TABLE Employees
ADD CONSTRAINT PK_ID PRIMARY KEY (Eid);

6. Що таке точки збереження?

Відповідь:
Точки збереження схожі на маркери. Виконуючи довгу транзакцію, корисною програмою є встановлення періодичних точок збереження, щоб ми могли повернутись до точки збереження у випадку, якщо транзакція не вдасться.

Перейдемо до наступних запитань щодо інтерв'ю Oracle.

7. Що таке BLOB?

Відповідь:
BLOB - двійковий тип даних великих об'єктів. Він використовується для зберігання неструктурованих даних, таких як відео, аудіо чи зображення. Максимальна ємність BLOB - 4 ГБ-1 в Oracle.

Частина 2 - Питання щодо інтерв'ю Oracle (розширено)

Давайте тепер подивимось на розширені запитання щодо інтерв'ю Oracle.

8. Знайдіть помилку в наведеному нижче фрагменті коду, якщо такий є?

Відповідь:
SELECT student_id s_id, student_name name, birthdate date, student_number s_no FROM students;
Тут зарезервоване ключове слово "дата" було використано як псевдонім для дати народження стовпця. Ця дія незаконна в Oracle SQL. Для того щоб встановити зарезервоване ключове слово як псевдонім, ми можемо використовувати лапки.
SELECT student_id s_id, student_name name, birthdate “date”, student_number s_no FROM students;

9. Напишіть запит, щоб відобразити список таблиць, що належать користувачеві.

Відповідь:
Запит можна записати так:
SELECT tablespace_name, table_name FROM user_tables;

10. Що таке динамічний SQL? Коли використовувати динамічний SQL?

Відповідь:
Динамічний SQL - це розширення над статичним SQL. Це дозволяє записувати SQL запити під час виконання. Це з'являється у картині, коли нам потрібно налаштувати SQL запити під час виконання.
Мало поширених випадків, коли можна використовувати динамічний SQL:
• Якщо об’єктів бази даних не існує під час компіляції, ми можемо використовувати динамічний SQL для посилання на них.
• Окремі оператори DDL (Мова визначення даних) та заяви SCL (Мова управління сеансом) не підтримуються статичним SQL в PL / SQL. Ці заяви можна виконати за допомогою динамічного програмування SQL.
• Динамічний SQL може використовуватися для виконання блоку Dynamic PL / SQL. Використовуючи пункт EXECUTE IMMEDIATE, виклики PL / SQL можна визначити під час виконання.

11. Що таке тригер бази даних? Як його створити?

Відповідь:
Тригер бази даних - це збережений блок PL / SQL. База даних Oracle виконує її автоматично, коли виконуються певні умови. Збережений блок PL / SQL підключений до таблиці, схеми або бази даних. Тригер можна створити за допомогою пункту CREATE TRIGGER. Ми можемо вибрати, щоб увімкнути або вимкнути його за допомогою пунктів ENABLE та DISABLE оператора ALTER TABLE або ALTER TRIGGER. Це найчастіші запитання щодо інтерв'ю Oracle в інтерв'ю.

Перейдемо до наступних запитань щодо інтерв'ю Oracle.

12. Розкажіть про задані операції в SQL?

Відповідь:
UNION, UNION ALL, INTERSECT і MINUS - це різні оператори набору в Oracle SQL. Оператор UNION поєднує результат двох або більше SQL запитів і повертає результат без дублювання. Оператори UNION ALL працюють так само, як оператор UNION, зберігаючи повторювані записи. Оператор INTERSECT повертає результати, спільні для всіх запитів. Оператор MINUS повертає результати, які є унікальними для першого запиту та відсутні у другому запиті.

13. Яка відповідь на нижченаведений запит? Крім того, застосуйте виправлення, щоб запит, що знаходиться нижче, вев себе так, як очікувалося?

Відповідь:
SELECT CASE WHEN NULL = NULL THEN 'equals' ELSE 'not equals' END AS ANSWER FROM DUAL;
Відповідь на цей запит "не дорівнює". Це тому, що NULL у SQL перевіряється на рівність за допомогою оператора IS. Модифікація вищезазначеного запиту, щоб він правильно оцінював умову рівності, полягає в наступному:
SELECT CASE WHEN NULL IS NULL THEN 'equals' ELSE 'not equals' END AS ANSWER FROM DUAL;

14. Яке призначення функцій COALESCE та NVL?

Відповідь:
Обидві функції використовуються для перевірки наявності нулів у визначеному стовпці та заміни його іншим значенням у разі успішної перевірки нуля.
Використання зразка:
SELECT NVL(null, 12) FROM DUAL;
SELECT COALESCE(null, null, 12) FROM DUAL;

Функція COALESCE може приймати декілька аргументів, тоді як NVL бере два аргументи.

15. Для чого використовується пункт HAVING?

Відповідь:
Стаття HAVING обмежує сукупні запити. Виконавши агрегацію за допомогою пункту GROUP BY, ми можемо використати пункт HAVING, щоб додати додаткові умови до результату.

Питання для інтерв'ю Oracle - заключні думки

Як правило, очікується, що розробник Oracle буде знати основи запитів разом із розширеними концепціями. Тут ми висвітлювали питання, орієнтовані не тільки на основи програмування SQL, але й на теоретичне розуміння. Швидкий огляд цієї статті повинен зробити вас краще оснащеним, що очікувати під час співбесіди.

Рекомендована стаття

Це посібник для Списку запитань щодо інтерв'ю Oracle та відповідей, щоб кандидат міг легко розправити ці запитання щодо інтерв'ю Oracle. Ви також можете переглянути наступні статті, щоб дізнатися більше -

  1. Найкорисніші питання щодо інтерв'ю для групи | 6 порад для групового інтерв'ю
  2. Ефективні способи виділитися в інтерв'ю по телефону
  3. 15 найважливіших запитань і відповідей щодо Ruby
  4. Топ-10 найкорисніших запитань щодо інтерв'ю HBase