Sobes.tech
Intern
149
questionbank

Знаете ли вы SQL?

Ответ от нейросети

sobes.tech AI

Да, есть опыт работы с SQL, в частности с Microsoft SQL Server.

Знаком с основными концепциями и командами:

  • DDL (Data Definition Language): CREATE, ALTER, DROP.
  • DML (Data Manipulation Language): SELECT, INSERT, UPDATE, DELETE.
  • DCL (Data Control Language): GRANT, REVOKE.
  • TCL (Transaction Control Language): COMMIT, ROLLBACK.

Умею писать сложные запросы с использованием:

  • Соединений (JOIN): INNER JOIN, LEFT JOIN, RIGHT JOIN, FULL OUTER JOIN, CROSS JOIN.
  • Агрегатных функций: COUNT, SUM, AVG, MIN, MAX.
  • Группировки и фильтрации: GROUP BY, HAVING, WHERE.
  • Подзапросов.
  • Оконных функций (Window Functions).
  • Общих табличных выражений (Common Table Expressions - CTE).

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

Пример простого запроса на выборку данных:

SELECT  
    CustomerID, -- Идентификатор клиента  
    CompanyName, -- Название компании  
    ContactName -- Имя контакта  
FROM  
    Customers -- Из таблицы клиентов  
WHERE  
    Country = 'USA'; -- Фильтрация по стране  

Пример запроса с JOIN и агрегацией:

SELECT  
    p.ProductName, -- Название продукта  
    SUM(od.Quantity) AS TotalQuantitySold -- Подсчет общего количества проданных единиц  
FROM  
    Products AS p -- Таблица продуктов  
INNER JOIN  
    OrderDetails AS od ON p.ProductID = od.ProductID -- Соединение по ID продукта  
GROUP BY  
    p.ProductName; -- Группировка по названию продукта