Вопросы для собеседования по SQL

Опубликовано: 19 Августа, 2021
  1. Что такое SQL?
    SQL означает язык структурированных запросов. Это язык, используемый для взаимодействия с базой данных, то есть для создания базы данных, для создания таблицы в базе данных, для извлечения данных или обновления таблицы в базе данных и т. Д. SQL - это стандарт ANSI (Американский национальный институт стандартов). Используя SQL, мы можем делать много вещей, например - мы можем выполнять запросы, мы можем вставлять записи в таблицу, мы можем обновлять записи, мы можем создавать базу данных, мы можем создавать таблицу, мы можем удалять таблицу и т. Д.
  2. Что такое база данных?
    База данных определяется как структурированная форма данных, которая хранится на компьютере или данные в организованном порядке и к которым можно получить доступ различными способами. Это также набор схем, таблиц, запросов, представлений и т. Д. База данных помогает нам легко хранить, получать доступ и манипулировать данными, хранящимися на компьютере. Система управления базой данных позволяет пользователю взаимодействовать с базой данных.

  3. Поддерживает ли SQL функции языка программирования?
    Это правда, что SQL - это язык, но он не поддерживает программирование, поскольку это не язык программирования, это командный язык. У нас нет условных операторов в SQL, таких как циклы for или if..else, у нас есть только команды, которые мы можем использовать для запроса, обновления, удаления и т. Д. Данных в базе данных. SQL позволяет нам манипулировать данными в базе данных.
  4. В чем разница между SQL и PL / SQL?
    Ответ: Ниже показаны некоторые общие различия между SQL и PL / SQL:
    SQL PL / SQL
    SQL - это язык выполнения запросов или командный язык PL / SQL - полноценный язык программирования
    SQL - это язык, ориентированный на данные PL / SQL - процедурный язык
    SQL по своей природе очень декларативен PL / SQL имеет процедурный характер
    Он используется для управления данными Используется для создания приложений
    В SQL мы можем выполнять по одному оператору за раз Мы можем выполнять блок операторов в PL / SQL
    SQL сообщает базе данных, что делать? PL / SQL сообщает базе данных, как это сделать
    Мы можем встроить SQL в PL / SQL Мы не можем встроить PL / SQL в SQL
  5. В чем разница между операторами BETWEEN и IN в SQL?
    МЕЖДУ
    Оператор BETWEEN используется для выборки строк на основе диапазона значений.
    Например,
     ВЫБРАТЬ * ИЗ студентов 
    ГДЕ ROLL_NO МЕЖДУ 20 И 30;
    

    Этот запрос выберет все те строки из таблицы Student, где значение поля ROLL_NO находится между 20 и 30.
    В
    Оператор IN используется для проверки значений, содержащихся в определенных наборах.
    Например,

     ВЫБРАТЬ * ИЗ студентов 
    ГДЕ ROLL_NO IN (20,21,23);
    

    Этот запрос выберет все те строки из таблицы Student, где значение поля ROLL_NO равно 20, 21 или 23.

  6. Написать SQL-запрос, чтобы найти имена сотрудников, начинающиеся с буквы «А»?
    Для этого используется оператор SQL LIKE. Он используется для получения отфильтрованных данных путем поиска определенного шаблона в предложении where.
    Синтаксис использования LIKE:
     ВЫБРАТЬ column1, column2 FROM table_name WHERE column_name LIKE pattern; 
    
    НРАВИТСЯ : имя оператора
    шаблон : точное значение, извлеченное из шаблона, чтобы получить связанные данные в
    набор результатов.
    

    Требуемый запрос:

     ВЫБЕРИТЕ * ИЗ сотрудников, ГДЕ EmpName как «A%»;
    

    Вы можете обратиться к этой статье о предложении WHERE для получения более подробной информации об операторе LIKE.

  7. В чем разница между типами данных CHAR и VARCHAR2 в SQL?
    Оба этих типа данных используются для символов, но varchar2 используется для символьных строк переменной длины, тогда как char используется для символьных строк фиксированной длины. Например, если мы укажем тип как char (5), тогда нам не будет разрешено хранить строку любой другой длины в этой переменной, но если мы укажем тип этой переменной как varchar2 (5), тогда нам будет разрешено хранить строки переменной длины, мы можем сохранить в этой переменной строку длиной 3, 4 или 2.
  8. Назовите различные типы функций обработки регистра, доступные в SQL.
    В SQL доступны три типа функций обработки регистра. Они есть,
    • LOWER : цель этой функции - вернуть строку в нижнем регистре. Он принимает строку в качестве аргумента и возвращает строку, преобразовывая ее в нижний регистр.
      Синтаксис:
       НИЖНИЙ ('строка')
      
    • ВЕРХНИЙ : цель этой функции - вернуть строку в верхнем регистре. Он принимает строку в качестве аргумента и возвращает строку, преобразовывая ее в верхний регистр.
      Синтаксис:
       ВЕРХНИЙ ('строка')
      
    • INITCAP : цель этой функции - вернуть строку с первой буквой в верхнем регистре и остальными буквами в нижнем регистре.
      Синтаксис:
       INITCAP ('строка')
      
  9. Что вы имеете в виду под языком определения данных?
    Язык определения данных или DDL позволяет выполнять такие запросы, как CREATE, DROP и ALTER. То есть те запросы, которые определяют данные.

  10. Что вы имеете в виду под языком манипулирования данными?
    Язык манипулирования данными или DML используется для доступа к данным в базе данных или управления ими.
    Это позволяет нам выполнять перечисленные ниже функции:
    • Вставить данные или строки в базу данных
    • Удалить данные из базы данных
    • Получить или получить данные
    • Обновить данные в базе данных.
  11. В чем разница между первичным ключом и уникальными ограничениями?
    Первичный ключ не может иметь значение NULL, ограничения уникальности могут иметь значения NULL. В таблице только один первичный ключ, но может быть несколько уникальных ограничений. Первичный ключ создает индекс кластера автоматически, а уникальный ключ - нет.
  12. Что такое представление в SQL?
    Представления в SQL - это своего рода виртуальные таблицы. В представлении также есть строки и столбцы, как в реальной таблице в базе данных. Мы можем создать представление, выбрав поля из одной или нескольких таблиц, имеющихся в базе данных. В представлении могут быть либо все строки таблицы, либо определенные строки в зависимости от определенного условия.
    Оператор SQL CREATE VIEW используется для создания представлений.
    Базовый синтаксис:
     СОЗДАТЬ ПРОСМОТР имя_представления AS
    ВЫБРАТЬ column1, column2 .....
    FROM table_name
    ГДЕ условие;
    
    view_name : имя для просмотра
    table_name : имя таблицы
    condition : Условие для выбора строк
    

    Дополнительные сведения о том, как создавать и использовать представление, см. В этой статье.

  13. Что вы имеете в виду под внешним ключом?
    Внешний ключ - это поле, которое может однозначно идентифицировать каждую строку в другой таблице. И это ограничение используется для указания поля как внешнего ключа. То есть это поле указывает на первичный ключ другой таблицы. Обычно это создает своего рода связь между двумя таблицами.
    Рассмотрим две таблицы, показанные ниже:

    Заказы

    O_ID № ЗАКАЗА C_ID
    1 2253 3
    2 3325 3
    3 4521 2
    4 8532 1

    Клиенты

    C_ID НАЗВАНИЕ АДРЕС
    1 РАМЕШ ДЕЛИ
    2 СЮРЕШ NOIDA
    3 ДХАРМЕШ ГУРГАОН

    Как мы ясно видим, поле C_ID в таблице «Заказы» является первичным ключом в таблице «Клиенты», то есть однозначно идентифицирует каждую строку в таблице «Клиенты». Следовательно, это внешний ключ в таблице заказов.
    Синтаксис:

     СОЗДАТЬ ТАБЛИЦЫ Заказы
    (
    O_ID int NOT NULL,
    ORDER_NO int NOT NULL,
    C_ID int,
    ПЕРВИЧНЫЙ КЛЮЧ (O_ID),
    ИНОСТРАННЫЙ КЛЮЧ (C_ID) ССЫЛКИ Клиенты (C_ID)
    )
    
  14. Что такое соединение в SQL? Какие бывают типы соединений?
    Оператор SQL Join используется для объединения данных или строк из двух или более таблиц на основе общего поля между ними. Различные типы объединений:
    • INNER JOIN : ключевое слово INNER JOIN выбирает все строки из обеих таблиц, пока выполняется условие. Это ключевое слово создаст набор результатов путем объединения всех строк из обеих таблиц, которым удовлетворяет условие, т.е. значение общего поля будет одинаковым.
    • LEFT JOIN : это соединение возвращает все строки таблицы с левой стороны соединения и соответствующие строки для таблицы с правой стороны соединения. Строки, для которых нет соответствующей строки с правой стороны, набор результатов будет содержать null. LEFT JOIN также известен как LEFT OUTER JOIN
    • RIGHT JOIN : RIGHT JOIN похож на LEFT JOIN. Это соединение возвращает все строки таблицы с правой стороны соединения и соответствующие строки для таблицы с левой стороны соединения. Строки, для которых нет соответствующей строки с левой стороны, набор результатов будет содержать null. RIGHT JOIN также известен как RIGHT OUTER JOIN.
    • FULL JOIN : FULL JOIN создает набор результатов, комбинируя результат LEFT JOIN и RIGHT JOIN. Набор результатов будет содержать все строки из обеих таблиц. Строки, для которых нет соответствия, набор результатов будет содержать значения NULL.

    Чтобы узнать подробности о каждом из этих объединений, обратитесь к этому.

  15. Что такое индекс?
    Индекс базы данных - это структура данных, которая повышает скорость операций извлечения данных в таблице базы данных за счет дополнительных операций записи и использования большего объема памяти для хранения дополнительной копии данных. Данные могут храниться на диске только в одном порядке. Для поддержки более быстрого доступа в соответствии с разными значениями желателен более быстрый поиск, например двоичный поиск для разных значений. Для этого на таблицах создаются индексы. Этим индексам требуется дополнительное место на диске, но они позволяют быстрее выполнять поиск по различным часто используемым значениям.

Автор статьи - Харш Агарвал. Если вам нравится GeeksforGeeks, и вы хотели бы внести свой вклад, вы также можете написать статью с помощью provide.geeksforgeeks.org или отправить ее по электронной почте на deposit@geeksforgeeks.org. Посмотрите, как ваша статья появляется на главной странице GeeksforGeeks, и помогите другим гикам.

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