Топ-50 запитань і відповідей на інтерв’ю Oracle (2025)

Питання для співбесіди з Oracle SQL для новачків і досвідчених

Підготовка до співбесіди з Oracle може здатися надзвичайно важкою, незалежно від того, чи ви новачок, чи досвідчений професіонал. Цей посібник із запитань і відповідей на співбесіді Oracle надасть вам основні знання та основні концепції, необхідні для досягнення успіху. Ми прагнемо підтримати вашу подорож — від фундаментальних запитань для інтерв’ю Oracle до більш складних тем. Зануртеся, щоб відточити свої навички та підвищити впевненість на майбутній співбесіді. Ви знайдете цінну інформацію як для початкового рівня, так і для досвідчених кандидатів.

 

Питання для співбесіди Oracle для першокурсників

Запитання та відповіді на співбесіді Oracle

 1) Різниця між типами даних varchar і varchar2?

Varchar може зберігати до 2000 байт, а varchar2 — до 4000 байт. Varchar займатиме простір для значень NULL, а Varchar2 не займатиме місця. Обидва відрізняються простором.

Безкоштовне завантаження PDF: Запитання та відповіді на інтерв’ю Oracle


2) Якою мовою розроблено Oracle?

Oracle було розроблено з використанням мови C.

 3) Що таке тип даних RAW?

Тип даних RAW використовується для зберігання значень у двійковому форматі даних. Максимальний розмір для raw в таблиці в 32767 байт.

4) Яке використання функції NVL?

Функція NVL використовується для заміни значень NULL іншим або заданим значенням. Приклад – NVL(значення, замінити значення)

5) Чи використовуються якісь команди для розрахунку місяців? Якщо так, то які вони?

В Oracle функція months_between використовується для визначення кількості місяців між заданими датами. Приклад: Months_between(Дата 1, Дата 2)


6) Що таке вкладені таблиці?

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

7) Що таке функція COALESCE?

Функція COALESCE використовується для повернення значення, яке в списку не є нульовим. Якщо всі значення в списку нульові, функція об’єднання поверне NULL.
Coalesce(value1, value2,value3,…)

8) Що таке тип даних BLOB?

Тип даних BLOB — це двійковий рядок різної довжини, який використовується для зберігання двох гігабайт пам’яті. Довжину BLOB слід вказувати в байтах.
Запитання на інтерв'ю Oracle
Запитання на інтерв'ю Oracle

9) Як ми представляємо коментарі в Oracle?

Коментарі в Oracle можуть бути представлені двома способами:
  1. Два тире (–) перед початком рядка – один оператор
  2. /*—— */ використовується для представлення його як коментарів для блоку оператора

10) Що таке DML?

Data Manipulation Language (DML) використовується для доступу та маніпулювання даними в існуючих об’єктах. Інструкції DML є вставкою, вибором, оновленням і видаленням, і це не призведе до неявної фіксації поточної транзакції.

Питання для співбесіди з Oracle SQL для досвідчених

11) Яка різниця між ПЕРЕКЛАДАТИ та ЗАМІНИТИ?

Переклад використовується для заміни символів, а Заміна використовується для заміни окремого символу словом.

12) Як ми виводимо рядки з таблиці без дублікатів?

Повторювані рядки можна видалити за допомогою ключового слова DISTINCT у операторі select.

13) Яке використання оператора Merge?

Інструкція злиття використовується для вибору рядків з одного або кількох джерел даних для оновлення та вставки в таблицю або подання. Використовується для поєднання кількох операцій.

14) Що таке значення NULL в Oracle?

Значення NULL означає відсутні або невідомі дані. Це використовується як заповнювач або представлено як запис за замовчуванням, щоб вказати, що фактичних даних немає.

15) Що таке речення USING і наведіть приклад?

Речення USING використовується для вказівки зі стовпцем для перевірки рівності під час об’єднання двох таблиць. [sql]Виберіть * у приєднанні співробітників заробітна плата з використанням ідентифікатора працівника[/sql] Таблиці співробітників об’єднуються з таблицями зарплати з ідентифікатором працівника.

16) Що таке таблиця збережених ключів?

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

17) Що таке WITH CHECK OPTION?

Речення параметра WITH CHECK визначає рівень перевірки, який потрібно виконати в операторах DML. Він використовується, щоб запобігти змінам у представленні, які призведуть до результатів, які не включено до підзапиту.

18) Яке використання агрегатних функцій в Oracle?

Агрегатна функція – це функція, у якій значення кількох рядків або записів об’єднуються разом, щоб отримати одне значення. Загальні агрегатні функції:
  • середній
  • Рахувати
  • Сума

19) Що ви маєте на увазі під пропозицією GROUP BY?

Речення GROUP BY можна використовувати в операторі select, де воно збиратиме дані в кількох записах і групуватиме результати за одним або кількома стовпцями.

20) Що таке підзапит і які існують типи підзапитів?

Підзапит також називається вкладеним запитом або внутрішнім запитом, який використовується для отримання даних із кількох таблиць. Підзапит додається в пункт where основного запиту. Існує два різних типи підзапитів:
  • Корельований підзапит
Корельований підзапит не може бути незалежним запитом, але може посилатися на стовпець у таблиці, указаній у списку із зовнішнього запиту.
  • Некорельований підзапит
Це можна оцінити як незалежний запит. Результати підзапиту надсилаються до основного запиту або батьківського запиту.

Питання для співбесіди для досвідчених фахівців з машинобудування

21) Що таке перехресне з'єднання?

Перехресне з’єднання визначається як декартовий добуток записів із таблиць, присутніх у з’єднанні. Перехресне з’єднання дасть результат, який поєднує кожен рядок першої таблиці з кожним рядком другої таблиці.

22) Що таке часові типи даних в Oracle?

Oracle надає такі типи тимчасових даних:
  • Тип даних дати – різні формати дат
  • Тип даних TimeStamp – різні формати Time Stamp
  • Інтервальний тип даних – інтервал між датою та часом

23) Як ми створюємо привілеї в Oracle?

Привілей — це не що інше, як право виконувати SQL запит або отримати доступ до іншого об’єкта користувача. Привілей можна надати як системний привілей або привілей користувача.
[sql]GRANT user1 TO user2 WITH MANAGER OPTION;[/sql]

24) Що таке VARray?

VArray — це тип даних Oracle, який використовується для створення стовпців, що містять багатозначні атрибути, і може містити обмежений масив значень.

25) Як ми отримуємо деталі поля таблиці?

Опишіть використовується для отримання відомостей про поля вказаної таблиці.

26) Яка різниця між перейменуванням і псевдонімом?

Перейменування — це постійне ім’я, надане таблиці або стовпцю, тоді як псевдонім — це тимчасове ім’я, надане таблиці чи стовпцю. Перейменування — це не що інше, як заміна імені, а псевдонім — це альтернативне ім’я таблиці чи стовпця.

27) Що таке перегляд?

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

28) Що таке курсорна змінна?

Курсорна змінна пов’язана з різними операторами, які можуть містити різні значення під час виконання. Курсорна змінна є свого роду посиланням.

29) Що таке атрибути курсора?

Кожен курсор в Oracle має набір атрибутів, який дозволяє прикладній програмі перевіряти стан курсора. Атрибути можна використовувати для перевірки відкритого чи закритого курсора, знайденого чи не знайденого, а також визначення кількості рядків.

30) Що таке оператори SET?

Оператори SET використовуються з двома або більше запитами, і це оператори об’єднання, об’єднання всіх, перетин і мінус.

Питання для співбесіди з Oracle для 5-річного досвіду

31) Як ми можемо видалити повторювані рядки в таблиці?

Повторювані рядки в таблиці можна видалити за допомогою ROWID.

32) Які атрибути має Курсор?

Атрибути Курсора є
  • % ЗНАЙДЕНО
Повертає NULL, якщо курсор відкритий і вибірка не була виконана. Повертає TRUE, якщо вибірка курсора виконана успішно. Повертає False, якщо не повернуто жодного рядка.
  • %НЕ ЗНАЙДЕНО
Повертає NULL, якщо курсор відкритий і вибірка не була виконана Повертає False, якщо вибірка була виконана Повертає True, якщо не було повернуто жодного рядка
  • %ISOPEN
Повертає true, якщо курсор відкритий. Повертає false, якщо курсор закрито
  • %ROWCOUNT
Повертає кількість отриманих рядків. Його потрібно повторити через весь курсор, щоб отримати точний реальний підрахунок.

33) Чи можемо ми зберігати зображення в базі даних і якщо так, то як це можна зробити?

Так, ми можемо зберігати зображення в базі даних за типом Long Raw Data. Цей тип даних використовується для зберігання двійкових даних довжиною 2 гігабайти. Але таблиця може мати лише тип даних Long Raw.

34) Що таке обмеження цілісності?

Обмеження цілісності – це оголошення, що визначає бізнес-правило для стовпця таблиці. Обмеження цілісності використовуються для забезпечення точності та узгодженості даних у базі даних. Є типи – доменна цілісність, посилальна цілісність і доменна цілісність.

35) Що таке ALERT?

Попередження – це вікно, яке з’являється в центрі екрана, накладаючи частину поточного дисплея.

36) Що таке хеш-кластер?

Хеш-кластер — це техніка, яка використовується для зберігання таблиці для швидшого пошуку. Застосуйте хеш-значення до таблиці, щоб отримати рядки з таблиці.

37) Які різні обмеження використовуються в Oracle?

Використовуються такі обмеження:
  • NULL – це означає, що певний стовпець може містити значення NULL
  • NOT NULL – це означає, що певний стовпець не може містити значення NULL
  • ПЕРЕВІРКА – Перевірте значення в заданому стовпці на відповідність конкретним критеріям
  • ЗА УМОВЧУВАННЯМ – це означає, що значення присвоєно значенню за замовчуванням

38) Яка різниця між SUBSTR та INSTR?

SUBSTR повертає певну частину рядка, а INSTR надає позицію символу, у якій у рядку знайдено шаблон. SUBSTR повертає рядок, тоді як INSTR повертає число.

39) Який режим параметрів можна передати процедурі?

IN, OUT та INOUT — це режими параметрів, які можна передати процедурі.

40) Що таке різні об’єкти бази даних Oracle?

В Oracle є різні об’єкти даних –
  • Столи – набір елементів, організованих по вертикалі та горизонталі
  • Перегляди – віртуальна таблиця, отримана з однієї або кількох таблиць
  • Індекси – метод налаштування продуктивності для обробки записів
  • Синоніми – Псевдонім для таблиць
  • Послідовності – кілька користувачів генерують унікальні числа
  • Табличні простори – логічна одиниця зберігання в Oracle

Питання для співбесіди з Oracle для 10-річного досвіду

41) Які відмінності між LOV та List Item?

LOV є властивістю, тоді як елементи списку розглядаються як один елемент. Список елементів налаштовано як колекцію списку елементів. Елемент списку може мати лише один стовпець, LOV може мати один або кілька стовпців.

42) Що таке привілеї та гранти?

Привілеї – це права на виконання інструкцій SQL – означає Право на підключення та підключення. Гранти надаються об’єктам, щоб об’єкти могли отримати відповідний доступ. Гранти можуть надаватися власником або творцем об’єкта.

43) Яка різниця між $ORACLE_BASE та $ORACLE_HOME?

База Oracle — це головний або кореневий каталог оракула, тоді як ORACLE_HOME знаходиться під базовою папкою, в якій знаходяться всі продукти оракула.

44) Який найшвидший метод запиту для отримання даних із таблиці?

Рядок можна отримати з таблиці за допомогою ROWID. Використання ROW ID є найшвидшим методом запиту для отримання даних із таблиці.

45) Яка максимальна кількість тригерів може бути застосована до однієї таблиці?

12 — це максимальна кількість тригерів, які можна застосувати до однієї таблиці.

46) Як вивести номери рядків із записами?

Відобразити номери рядків із номерами записів –
Select rownum, <fieldnames> from table;
Цей запит відображатиме номери рядків і значення полів із заданої таблиці.

47) Як ми можемо переглянути останній запис, доданий до таблиці?

Останній запис можна додати до таблиці, і це можна зробити за допомогою –
Select * from (select * from employees order by rownum desc) where rownum<2;

48) Який тип даних таблиці DUAL?

Команда ПОДВІЙНИЙ таблиця — це таблиця з одним стовпцем, наявна в базі даних Oracle. У таблиці є один стовпець VARCHAR2(1) під назвою DUMMY зі значенням «X».

49) Яка різниця між декартовим з’єднанням і перехресним з’єднанням?

Немає відмінностей між приєднанням. Декартове та перехресне з’єднання однакові. Перехресне з’єднання дає декартовий добуток двох таблиць – рядки з першої таблиці множаться на іншу таблицю, яка називається декартовим добутком. Перехресне з’єднання без пропозиції where дає декартів добуток.

50) Як відобразити записи про співробітників, які отримують більшу зарплату, ніж середня зарплата у відділі?

Це можна зробити за допомогою цього запиту –
Select * from employee where salary>(select avg(salary) from dept, employee where dept.deptno = employee.deptno);
 

Висновок

Оволодіння запитаннями та відповідями на співбесіді Oracle має важливе значення для успіху, незалежно від того, чи є ви новим кандидатом, чи досвідченим. Практикуючи ці запитання, ви можете зміцнити впевненість і відточити свої навички. Не соромтеся ділитися будь-якими унікальними чи складними запитаннями в коментарях. Ретельно готуйтеся і бажаємо вам успіхів на співбесідах! Ці запитання для співбесіди також допоможуть у вашій віва (усній)

Поділитись

21 Коментарі

  1. Аватара Рамешкумар каже:

    – Є 3 великих файли, 1 ГБ (file_a.txt), 10 ГБ (file_b.txt) і 1 ТБ (file_c.txt);
    – Формат цих 3 файлів: кожен рядок із випадковим рядком у файлі;
    – Можна використовувати лише 100 МБ пам’яті, використання диска не обмежене;
    – Припущення:
    ТІЛЬКИ ЯКЩО рядок A з’являється у всіх 3 файлах, нам потрібно підрахувати загальну кількість разів появи цього A. Наприклад, A з’являється 2 рази у file_a.txt, з’являється 10 разів у file_b.txt, з’являється 100 разів у file_c. txt, тоді ми підраховуємо загальну кількість разів появи A як 2 + 10 + 100 = 112 разів.

    Запитання: будь ласка, напишіть програму для виведення рядків із TOP 10 і LAST 10 часами появи в порядку спадання. хтось може відповісти, будь ласка.

      1. Аватара doctoo каже:

        РОЗДІЛ ПЕРШИЙ – СЦЕНАРІЙ
        SchemaName: IssuesTracking
        Опис проблеми:
        Ви повинні розробити та впровадити базу даних для програмного забезпечення для відстеження проблем. Відстеження проблем із програмним забезпеченням є невід’ємною частиною будь-якого життєвого циклу розробки корпоративного програмного забезпечення. The
        Набір інструментів відстеження проблем відповідає за створення, зберігання, відстеження та керування проблемами (наприклад, програмне забезпечення
        помилки або запити на нові функції). Кожна проблема представлена ​​квитком, який повинен фіксувати
        наступну інформацію
        • актуальна проблема
        • компоненти або проекти, на які впливає проблема
        • розробник/клієнти, які першими виявили проблему
        • розробники/менеджери, відповідальні за вирішення проблеми
        • стан питання
        • інші супутні питання (квитки)

        Детальні вимоги:
        Тут ми окреслюємо мінімальні вимоги до інструментарію управління змінами підприємства. Ви є
        заохочуємо змінювати, додавати та (якщо це чітко виправдано) видаляти вимоги, як вважаєте за потрібне
        необхідно. Квиток – можливі атрибути: власник, назва, опис, стан (наприклад, відкритий, оцінний, робочий,
        тестування, відкладене, відхилене, закрите тощо), пріоритет (наприклад, низький, середній, високий, терміновий), запланований
        дата завершення, один або кілька пов'язаних проектів, один або кілька пов'язаних квитків, категорія (завдання,
        функція, питання, дефект, віха), статус віхи, заявник, дата подання, ескалація
        особа, запис у блозі (форум для обговорення квитків), відповідні ресурси та пов’язані артефакти (наприклад, діаграми та документи, які допомагають вирішити проблеми), робочий журнал (кількість годин, відпрацьованих над
        кожен день, який може бути різним для кожного дня та для кожного користувача)

        3

        Проект – можливі атрибути: назва, опис, запланована дата завершення, фактична дата завершення, керівник проекту, творець, дата створення, робочий журнал (кількість годин, відпрацьованих кожного дня, які
        може бути різним для кожного дня і для кожного користувача)
        Користувач – можливі атрибути: ім’я, посада (наприклад, розробник, менеджер, системний адміністратор), безпека (ім’я користувача
        і пароль)
        Артефакт – можливі атрибути: назва, опис, категорія, версія, розмір, дані
        Коментар – можливі атрибути: квиток, відправник, дата подання, текст - Ваша роль як студента
        Метою цієї вправи є отримання практичного досвіду розробника баз даних
        адміністратор. Підготуйте сценарій і задокументуйте його. Ви можете використовувати такі інструменти, як SQL Developer
        щоб реалізувати дизайн бази даних. Використовуйте приклади, де це доречно.

        4

        РОЗДІЛ ДРУГИЙ – ПИТАННЯ

        Всі питання обов'язкові. Дайте відповіді на всі питання по черзі. Переконайтеся, що ви вказали кожен
        запитання та відповіді. За потреби використовуйте синтаксис і приклади. Ви повинні отримати свої відповіді на основі сценарію. Цифри в кінці питань
        вказати повні бали. Питання:
        1. Створіть схему користувача (IssueTracking) і надайте дозвіл усім об’єктам. [5]
        2. Створіть можливу таблицю БД в Oracle, яка повинна представляти задані сценарії. [10]
        3. Визначте та поясніть зв’язок між таблицями [10]
        4. Визначте відповідні структури таблиці (наприклад, стовпець дати може бути полем дати, поданими даними суми
        повинно бути числове поле даних) [10]
        5. Поясніть безпеку об’єктів БД і безпеку системи. Створіть DBReader і DBWriter
        користувачі, користувач DBWriter повинен отримати доступ до виконання команд DDL і DML, користувач DBReader може отримати доступ лише до дозволу на читання для всіх таблиць [4+4+2+6+4]
        6. Що таке запірний механізм? Чому це необхідно? Продемонструйте спільний замок і
        Ексклюзивна ситуація блокування в одній таблиці [2+4+6+6]
        7. Що таке взаємоблокування та як ви керуєте взаємоблокуванням у системі БД? Створіть a
        тупикова ситуація в таблиці «Квиток». [5+10]
        8. Компанія ABC Inc. втратила дані минулого тижня через збій системи, власник компанії
        не хоче нічого втрачати для бізнесу. Зазвичай DBA виконує щоденне резервне копіювання
        Кінець дня. Ви – DBA компанії ABC Inc.; Як ви керуєте даними за цей тиждень і
        який би був найкращий шлях вперед? [10]

        Можеш мені допомогти ?

  2. Аватара Іен каже:

    Це не повинно бути надто важко.
    Я б прокрутив найменший файл, оскільки, якщо в ньому немає рядка, нам байдуже, чи існує він в інших файлах.
    Для моєї структури даних я б зберіг список, який містив би рядок для кожного рядка в найменшому файлі, і я б написав у цьому рядку свою кількість. Якщо рядок присутній у файлі кілька разів, ви можете рахувати наступні входження нулями або позначати їх як X, щоб ви знали, що не рахувати їх двічі.
    Потім я читаю цей файл, щоб завантажити масив із 10 найпопулярнішими входженнями, я б розмістив перший індекс у цьому масиві та кількість.
    Потім я використовую індекс, щоб перейти до файлу, прочитати фактичний рядок і відобразити його разом із підрахунком.
    Потім виконайте аналогічний процес для ОСТАННІХ 10, це має бути ще простіше.

    1. Аватара Сонні Санфіл Сангамешвар каже:

      чи можете ви написати сценарій замість словесної англійської

  3. Аватара Куша Кумара каже:

    Дуже дякую за надану можливість повторити знання про Oracle DB

  4. Аватара Гурішанкар Бехера каже:

    У відповіді 50 помилка.
    Дано це
    Виберіть * від працівника, де зарплата>(виберіть середню (зарплату) від відділу, працівник, де відділ.дептно = працівник.дептно;
    Помилка: не вказано останню дужку.

    1. Аватара Крішна каже:

      Привіт, дякую, що написали. Його переглядають і оновлюють.

  5. Аватара Дамодар каже:

    Select — це не команда DML, а команда DRL. Зверніться до питання 10 вище.

  6. Аватара анкер каже:

    привіт,

    Питання № 47. отримати останній запис табл
    Виберіть * із (виберіть * із співробітників упорядкуйте за Emploee_id desc), де rownum<=1;

    замість вищевказаного запиту ми можемо використати наведений нижче.

    виберіть * із співробітників, де rownum<=1 порядок за Emploee_id desc;

    Спасибі,
    анкер

    1. Аватара Віджей каже:

      ми не можемо використовувати, пропозиція order by обробляється системою sql після обробки набору результатів, тому ваш запит приймає перший запис у таблиці

  7. Аватара Заб каже:

    45. Яка максимальна кількість тригерів може бути застосована до однієї таблиці?
    правильна відповідь:

    Ми можемо мати N кількість тригерів у таблиці, але максимальний тип тригерів в одній таблиці може бути 3*2*2=12, тобто поділ виконується як
    Вставити/Оновити/Видалити= 3
    До/Після= 2
    Рівень рядка/Рівень оператора=2

  8. Аватара Шрідхар каже:

    Якщо запит на вибірку повертає 6 лакхів запису з 10 лакхів записів з однієї таблиці, тоді оптимізатор використовує сканування INDEX або повне сканування таблиці. коли відбудеться збій індексу та який максимальний відсоток INDEX для отримання запису з таблиці?

    Дякую

  9. Аватара МД ДІДАРУЛ ІСЛАМ каже:

    Дякуємо за допомогу через запитання для співбесіди.

залишити коментар

Ваша електронна адреса не буде опублікований. Обов'язкові поля позначені * *