Учебники

34) Вопросы и ответы по SQL интервью

1. Что такое СУБД?

Система управления базами данных (СУБД) — это программа, которая контролирует создание, обслуживание и использование базы данных. СУБД может быть названа Файловым менеджером, который управляет данными в базе данных, а не сохраняет их в файловых системах.

2. Что такое СУБД?

RDBMS расшифровывается как система управления реляционными базами данных. СУБД хранит данные в коллекции таблиц, которые связаны общими полями между столбцами таблицы. Он также предоставляет реляционные операторы для манипулирования данными, хранящимися в таблицах.

Пример: SQL Server.

3. Что такое SQL?

SQL расшифровывается как язык структурированных запросов и используется для связи с базой данных. Это стандартный язык, используемый для выполнения таких задач, как поиск, обновление, вставка и удаление данных из базы данных.

Стандартные команды SQL являются Select.

4. Что такое база данных?

База данных — это не что иное, как организованная форма данных для легкого доступа, хранения, поиска и управления данными. Это также известно как структурированная форма данных, доступ к которым можно получить разными способами.

Пример: база данных управления школой, база данных управления банком.

5. Что такое таблицы и поля?

Таблица — это набор данных, которые организованы в модель с столбцами и строками. Столбцы можно классифицировать как вертикальные, а строки — горизонтальные. В таблице указано количество столбцов, называемых полями, но может быть любое количество строк, которое называется записью.

Пример:.

Таблица: сотрудник.

Поле: Emp ID, имя Emp, дата рождения.

Данные: 201456, Дэвид, 15.11.1960.

6. Что такое первичный ключ?

Первичный ключ — это комбинация полей, которые однозначно определяют строку. Это особый вид уникального ключа, и он имеет неявное ограничение NOT NULL. Это означает, что значения первичного ключа не могут быть NULL.

7. Что такое уникальный ключ?

Ограничение уникального ключа однозначно идентифицирует каждую запись в базе данных. Это обеспечивает уникальность для столбца или набора столбцов.

Для ограничения первичного ключа установлено автоматическое ограничение уникальности. Но нет, в случае уникального ключа.

Может быть много уникальных ограничений, определенных для каждой таблицы, но только одно ограничение первичного ключа, определенное для таблицы.

8. Что такое внешний ключ?

Внешний ключ — это одна таблица, которая может быть связана с первичным ключом другой таблицы. Необходимо создать связь между двумя таблицами, связав внешний ключ с первичным ключом другой таблицы.

9. Что такое соединение?

Это ключевое слово, используемое для запроса данных из большего количества таблиц на основе взаимосвязи между полями таблиц. Ключи играют важную роль при использовании JOIN.

10. Каковы типы объединения и объяснения каждого?

Существуют различные типы соединений, которые можно использовать для извлечения данных, и это зависит от отношений между таблицами.

  • Внутреннее соединение.

Внутреннее соединение возвращает строки, когда между таблицами есть хотя бы одно совпадение строк.

  • Присоединяйтесь

Правое соединение возвращает строки, которые являются общими между таблицами и всеми строками правой таблицы. Проще говоря, он возвращает все строки из правой таблицы, хотя в левой таблице нет совпадений.

  • Оставил Присоединиться.

Левое объединение возвращает строки, которые являются общими между таблицами и всеми строками левой боковой таблицы. Проще говоря, он возвращает все строки из таблицы слева, даже если в таблице справа нет совпадений.

  • Полное присоединение.

Полное соединение возвращает строки, когда в любой из таблиц есть совпадающие строки. Это означает, что он возвращает все строки из левой таблицы и все строки из правой таблицы.

11. Что такое нормализация?

Нормализация — это процесс минимизации избыточности и зависимости путем организации полей и таблицы базы данных. Основной целью нормализации является добавление, удаление или изменение поля, которое можно сделать в одной таблице.

12. Что такое денормализация.

Денормализация — это метод, используемый для доступа к данным из более высоких и более низких нормальных форм базы данных. Это также процесс введения избыточности в таблицу путем включения данных из соответствующих таблиц.

13. Каковы все различные нормализации?

Нормальные формы можно разделить на 5 форм, и они объясняются ниже -.

  • Первая нормальная форма (1NF) :.

Это должно удалить все повторяющиеся столбцы из таблицы. Создание таблиц для связанных данных и определение уникальных столбцов.

  • Вторая нормальная форма (2NF) :.

Удовлетворение всем требованиям первой нормальной формы. Размещение подмножеств данных в отдельных таблицах и создание связей между таблицами с использованием первичных ключей.

  • Третья нормальная форма (3NF) :.

Это должно соответствовать всем требованиям 2NF. Удаление столбцов, которые не зависят от ограничений первичного ключа.

  • Четвертая нормальная форма (4NF) :.

Соответствует всем требованиям третьей нормальной формы и не должно иметь многозначных зависимостей.

14. Что такое вид?

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

15. Что такое индекс?

Индекс — это метод настройки производительности, позволяющий быстрее извлекать записи из таблицы. Индекс создает запись для каждого значения, и будет быстрее получать данные.

16. Каковы все различные типы индексов?

Есть три типа индексов -.

  • Уникальный индекс.

Эта индексация не позволяет полю иметь повторяющиеся значения, если столбец индексируется уникально. Уникальный индекс может применяться автоматически при определении первичного ключа.

  • Кластерный индекс.

Этот тип индекса меняет физический порядок таблицы и поиска на основе значений ключа. Каждая таблица может иметь только один кластерный индекс.

  • Некластерный индекс.

NonClustered Index не изменяет физический порядок таблицы и поддерживает логический порядок данных. Каждая таблица может иметь 999 некластеризованных индексов.

17. Что такое курсор?

Курсор базы данных — это элемент управления, обеспечивающий обход строк или записей в таблице. Это можно рассматривать как указатель на одну строку в наборе строк. Курсор очень полезен для обхода, такого как поиск, добавление и удаление записей базы данных.

18. Что такое отношения и каковы они?

Отношение базы данных определяется как связь между таблицами в базе данных. Существуют различные отношения базирования данных, и они следующие:

  • Отношения один к одному.
  • Отношение один ко многим.
  • Отношение много к одному.
  • Самореферентные отношения.

19. Что такое запрос?

Запрос БД — это код, написанный для получения информации из базы данных. Запрос может быть разработан таким образом, чтобы он соответствовал нашим ожиданиям от набора результатов. Просто вопрос к БД.

20. Что такое подзапрос?

Подзапрос — это запрос в другом запросе. Внешний запрос называется основным запросом, а внутренний запрос называется подзапросом. Подзапрос всегда выполняется первым, а результат подзапроса передается в основной запрос.

21. Какие бывают типы подзапросов?

Существует два типа подзапроса — коррелированные и некоррелированные.

Коррелированный подзапрос не может рассматриваться как независимый запрос, но он может ссылаться на столбец в таблице, указанной в списке ОТ основного запроса.

Некоррелированный подзапрос может рассматриваться как независимый запрос, а выходные данные подзапроса подставляются в основной запрос.

22. Что такое хранимая процедура?

Хранимая процедура — это функция, состоящая из множества операторов SQL для доступа к системе баз данных. Несколько операторов SQL объединены в хранимую процедуру и выполняют их в любое время и в любом месте.

23. Что такое триггер?

Триггер БД — это код или программы, которые автоматически выполняются в ответ на какое-либо событие в таблице или представлении в базе данных. Главным образом, триггер помогает поддерживать целостность базы данных.

Пример: когда новый студент добавляется в базу данных студентов, новые записи должны быть созданы в связанных таблицах, таких как таблицы экзамена, оценки и посещаемости.

24. В чем разница между командами DELETE и TRUNCATE?

Команда DELETE используется для удаления строк из таблицы, а предложение WHERE может использоваться для условного набора параметров. Фиксация и откат могут быть выполнены после удаления оператора.

TRUNCATE удаляет все строки из таблицы. Операция усечения не может быть отменена.

25. Что такое локальные и глобальные переменные и их различия?

Локальные переменные — это переменные, которые могут использоваться или существовать внутри функции. Они не известны другим функциям, и эти переменные не могут быть переданы или использованы. Переменные можно создавать всякий раз, когда вызывается эта функция.

Глобальные переменные — это переменные, которые могут использоваться или существовать в программе. Одна и та же переменная, объявленная в global, не может использоваться в функциях. Глобальные переменные не могут быть созданы, когда эта функция вызывается.

26. Что такое ограничение?

Ограничение может использоваться для указания ограничения на тип данных таблицы. Ограничение может быть указано при создании или изменении оператора таблицы. Образец ограничения есть.

  • НЕ НОЛЬ.
  • ЧЕК ОБ ОПЛАТЕ.
  • ДЕФОЛТ.
  • UNIQUE.
  • ОСНОВНОЙ КЛЮЧ.
  • ВНЕШНИЙ КЛЮЧ.

27. Что такое целостность данных?

Целостность данных определяет точность и согласованность данных, хранящихся в базе данных. Он также может определять ограничения целостности для применения бизнес-правил к данным при их вводе в приложение или базу данных.

28. Что такое автоинкремент?

Ключевое слово автоинкремента позволяет пользователю создать уникальный номер, который будет сгенерирован, когда в таблицу будет вставлена ​​новая запись. Ключевое слово AUTO INCREMENT может использоваться в Oracle, а ключевое слово IDENTITY может использоваться в SQL SERVER.

В основном это ключевое слово может использоваться всякий раз, когда используется PRIMARY KEY.

29. В чем разница между кластерным и некластерным индексом?

Кластерный индекс используется для простого извлечения данных из базы данных, изменяя способ хранения записей. База данных сортирует строки по столбцу, который настроен как кластерный индекс.

Некластеризованный индекс не изменяет способ его хранения, но создает полностью отдельный объект в таблице. Он указывает на исходные строки таблицы после поиска.

30. Что такое Datawarehouse?

Datawarehouse — это центральное хранилище данных из нескольких источников информации. Эти данные объединены, преобразованы и доступны для майнинга и онлайн-обработки. Данные хранилища имеют подмножество данных, называемых киосками данных.

31. Что такое Self-Join?

Self-join устанавливается как запрос, используемый для сравнения с самим собой. Это используется для сравнения значений в столбце с другими значениями в том же столбце в той же таблице. ALIAS ES можно использовать для сравнения таблиц.

32. Что такое кросс-соединение?

Перекрестное соединение определяет декартово произведение, где количество строк в первой таблице умножается на количество строк во второй таблице. Если предположить, что предложение WHERE используется в перекрестном соединении, тогда запрос будет работать как INNER JOIN.

33. Что такое пользовательские функции?

Пользовательские функции — это функции, написанные для использования этой логики всякий раз, когда это необходимо. Нет необходимости писать одну и ту же логику несколько раз. Вместо этого функция может быть вызвана или выполнена при необходимости.

34. Каковы все типы пользовательских функций?

Три типа пользовательских функций.

  • Скалярные функции.
  • Встроенные табличные функции.
  • Многозначные функции.

Скалярная единица возврата, вариант определил условие возврата. Два других типа возвращают таблицу в качестве возврата.

35. Что такое сопоставление?

Сортировка определяется как набор правил, определяющих порядок сортировки и сравнения символьных данных. Это может использоваться для сравнения символов A и других языков, а также зависит от ширины символов.

Значение ASCII можно использовать для сравнения этих символьных данных.

36. Каковы все различные типы чувствительности сопоставления?

Ниже приведены различные типы чувствительности сопоставления.

  • Чувствительность к регистру — A и a и B и b.
  • Акцент Чувствительность.
  • Kana Sensitivity — японские кана-персонажи.
  • Чувствительность ширины — однобайтовый символ и двухбайтовый символ.

37. Преимущества и недостатки хранимой процедуры?

Хранимая процедура может использоваться как модульное программирование — означает создание один раз, сохранение и вызов несколько раз при необходимости. Это поддерживает более быстрое выполнение вместо выполнения нескольких запросов. Это уменьшает сетевой трафик и обеспечивает лучшую безопасность данных.

Недостатком является то, что он может быть выполнен только в базе данных и использует больше памяти на сервере базы данных.

38. Что такое обработка онлайн-транзакций (OLTP)?

Оперативная обработка транзакций (OLTP) управляет приложениями на основе транзакций, которые можно использовать для ввода данных, извлечения и обработки данных. OLTP делает управление данными простым и эффективным. В отличие от OLAP-систем, целью OLTP-систем является обслуживание транзакций в реальном времени.

Пример — Банковские операции на ежедневной основе.

39. Что такое CLAUSE?

Предложение SQL определено для ограничения результирующего набора путем предоставления условия для запроса. Обычно это отфильтровывает несколько строк из всего набора записей.

Пример — запрос с условием WHERE

Запрос с условием HAVING.

40. Что такое рекурсивная хранимая процедура?

Хранимая процедура, которая вызывает сама по себе, пока не достигнет некоторого граничного условия. Эта рекурсивная функция или процедура помогает программистам использовать один и тот же набор кода любое количество раз.

41. Что такое команды Объединение, Минус и Взаимодействие?

Оператор UNION используется для объединения результатов двух таблиц и исключает повторяющиеся строки из таблиц.

Оператор MINUS используется для возврата строк из первого запроса, но не из второго запроса. Соответствующие записи первого и второго запроса и другие строки из первого запроса будут отображены как набор результатов.

Оператор INTERSECT используется для возврата строк, возвращаемых обоими запросами.

42. Что такое команда ALIAS?

Имя ALIAS может быть присвоено таблице или столбцу. Это псевдоним может быть указан в предложении WHERE для идентификации таблицы или столбца.

Пример-.

Select st.StudentID, Ex.Result from student st, Exam as Ex where st.studentID = Ex. StudentID

Здесь st относится к псевдониму таблицы учеников, а Ex относится к псевдонимам таблицы экзаменов.

43. В чем разница между операторами TRUNCATE и DROP?

TRUNCATE удаляет все строки из таблицы, и ее нельзя откатить. Команда DROP удаляет таблицу из базы данных, и операция не может быть отменена.

44. Что такое агрегатные и скалярные функции?

Агрегатные функции используются для оценки математических расчетов и возврата отдельных значений. Это можно рассчитать по столбцам в таблице. Скалярные функции возвращают одно значение на основе входного значения.

Пример -.

Aggregate — max (), count — Рассчитано относительно числа.

Скаляр — UCASE (), NOW () — Рассчитано относительно строк.

45. Как вы можете создать пустую таблицу из существующей таблицы?

Пример будет -.

Select * into studentcopy from student where 1=2

Здесь мы копируем таблицу ученика в другую таблицу с той же структурой без скопированных строк.

46. ​​Как получить общие записи из двух таблиц?

Общий набор результатов записей может быть достигнут с помощью -.

Select studentID from student. <strong>INTERSECT </strong> Select StudentID from Exam

47. Как получить альтернативные записи из таблицы?

Записи могут быть получены для нечетных и четных номеров строк -.

Для отображения четных чисел.

Select studentId from (Select rowno, studentId from student) where mod(rowno,2)=0

Для отображения нечетных чисел.

Select studentId from (Select rowno, studentId from student) where mod(rowno,2)=1

from (Выберите rowno, studentId from student), где mod (rowno, 2) = 1. [/ sql]

48. Как выбрать уникальные записи из таблицы?

Выберите уникальные записи из таблицы, используя ключевое слово DISTINCT.

Select DISTINCT StudentID, StudentName from Student.

49. Какая команда используется для извлечения первых 5 символов строки?

Есть много способов получить первые 5 символов строки -.

Select SUBSTRING(StudentName,1,5) as studentname from student
Select LEFT(Studentname,5) as studentname from student

50. Какой оператор используется в запросе для сопоставления с образцом?

Оператор LIKE используется для сопоставления с образцом и может использоваться как -.

  1. % — соответствует нулю или более символов.
  2. _ (Подчеркивание) — соответствует ровно одному символу.

Пример -.

Select * from Student where studentname like 'a%'
Select * from Student where studentname like 'ami_'