В этом посте мы рассмотрим основы команд SQL с короткими и легкими для понимания примерами.
Этот список команд SQL - это те, которые вы, скорее всего, будете использовать, поэтому познакомьтесь с ними как следует.
Каждая команда SQL снабжена описанием и фрагментом кода примера.
Операторы SQL можно сгруппировать по разным категориям:
В этом посте мы рассмотрим команды для DDL, DML и DQL.
Первое, что нам нужно сделать для работы с SQL, - это создать базу данных. CREATE DATABASE
заявление делает именно это.
Пример:
CREATE DATABASE testDB
CREATE TABLE
оператор создает новую таблицу в базе данных.
Пример:
CREATE TABLE Employees (
EmployeeID int,
FirstName varchar(255),
LastName varchar(255),
Department varchar(255) );
INSERT INTO
инструкция вставляет новые строки данных в таблицу
Пример:
INSERT INTO Employees (FirstName, LastName, Department) VALUES ('Sam', 'Burger', 'IT');
SELECT
- одна из основных и наиболее часто используемых команд SQL. Он выбирает данные из базы данных и возвращает таблицу результатов, называемую набором результатов.
Пример:
SELECT firstName, lastName FROM Employees;
SELECT
команда при использовании со звездочкой *
оператор, выбирает все записи из указанной таблицы.
Пример:
SELECT * FROM Employees
SELECT DISTINCT
возвращает только отличные данные; т.е. не включает повторяющиеся записи.
Пример:
SELECT DISTINCT Department FROM Employees;
SELECT INTO
оператор выбирает указанные данные из таблицы и копирует их в другую таблицу.
Пример:
SELECT firstName, entryGraduated INTO StudentAlumni FROM Students;
SELECT TOP указывает максимальное количество или процент записей данных, возвращаемых в результирующем наборе.
SELECT TOP 50 PERCENT * FROM Customers;
WHERE
Предложение используется для фильтрации результатов по заданному условию.
Пример:
SELECT * FROM Employees WHERE department = 'IT';
GROUP BY
Команда объединяет идентичные данные из разных строк в группы, создавая итоговые строки.
Пример:
SELECT COUNT(Department), Department FROM Employees GROUP BY Department;
HAVING
предложение работает так же, как WHERE
предложение, но разница в том, что HAVING
работает только с агрегатными функциями. Аналогично, WHERE
предложение не работает с агрегатными функциями.
Пример:
SELECT COUNT(Department), Department FROM Employees GROUP BY Department HAVING COUNT(Department) > 2;
IN
оператор включает несколько значений в предложение WHERE.
Пример:
SELECT * FROM Employees WHERE Department IN ('IT', 'Graphics', 'Marketing');
BETWEEN
Оператор фильтрует результаты и возвращает только те, которые соответствуют указанному диапазону.
Пример:
SELECT * FROM Employees WHERE JoiningDate BETWEEN '01-01-2015' AND `01-01-2020`;
AND
и OR
условные утверждения. В AND
все условия должны соответствовать заданным критериям. В OR
любое из условий, удовлетворяющих заданному критерию, возвращает результат.
Пример И:
SELECT * FROM Employees WHERE Department = 'IT' AND JoiningDate > '01-01-2015';
Пример ИЛИ:
SELECT * FROM Employees WHERE Department ='IT' OR Department = 'Graphics';
AS
работает как псевдоним. С помощью AS
мы можем переименовать столбец во что-то более значимое или более короткое в запросе, без необходимости изменять имя в базе данных.
Пример:
SELECT FirstName AS fname, LastName AS lname FROM Employees;
INNER JOIN
объединяет строки из разных таблиц.
Пример:
SELECT Orders.ID, Customers.Name FROM Orders INNER JOIN Customers ON Orders.ID = Customers.ID;
LEFT JOIN
извлекает записи из левой таблицы, которые соответствуют записям в правой таблице.
Пример:
SELECT Customers.CustomerName, Orders.OrderID FROM Customers LEFT JOIN Orders ON Customers.CustomerID = Orders.CustomerID ORDER BY Customers.CustomerName;
Напротив ЛЕВОГО СОЕДИНЕНИЯ RIGHT JOIN
извлекает записи из правой таблицы, соответствующие записям в левой таблице.
Пример:
SELECT Orders.OrderID, Employees.LastName FROM Orders RIGHT JOIN Employees ON Orders.EmployeeID = Employees.EmployeeID ORDER BY Orders.OrderID;
FULL JOIN
возвращает все записи, соответствующие либо в левой, либо в правой таблице.
Пример:
SELECT Customers.Name, CustomerOrders.ID FROM Customers FULL OUTER JOIN Orders ON Customers.ID = CustomerOrders.customerID ORDER BY Customers.Name;
DELETE
Оператор удаляет определенные строки из таблицы, которые соответствуют указанному условию.
Пример:
DELETE FROM Employees WHERE FirstName = 'Sam' AND LastName = 'Burger';
Мы используем ALTER TABLE
для добавления или удаления столбцов из таблицы.
Пример:
ALTER TABLE Employees ADD JoiningDate date;
TRUNCATE TABLE
удаляет записи данных из таблицы в базе данных, но сохраняет структуру таблицы.
Пример:
TRUNCATE TABLE temp_table
DROP TABLE
Оператор удаляет всю таблицу с параметрами столбца и настройками типа данных.
Пример:
DROP TABLE temp_table
DROP DATABASE
удаляет всю указанную базу данных вместе со всеми ее параметрами и данными.
Будьте особенно осторожны при использовании этой команды.
Пример:
DROP DATABASE temp_db
Связанный: