Понимание и изучение SQL может легко стать сложным и непосильным. В этом блоге я раскрою концепции SQL в понятные фрагменты, которые помогут вам быстрее освоить SQL менее чем за 5 минут.

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

В основе любого проекта по науке о данных лежат данные и возможность работы с большими наборами данных. Вот где SQL помогает. Большая часть сложных данных на предприятиях находится в реляционных базах данных. И хотя есть более новые альтернативы, большинство предприятий сегодня продолжают использовать SQL. SQL используется в качестве внешнего интерфейса для многих баз данных, таких как MySQL, PostgreSQL, Oracle, Sybase.

С помощью SQL мы создаем, поддерживаем и извлекаем данные из этих баз данных. Кроме того, мы можем интегрировать SQL с такими языками, как Python и R, для анализа данных и создания нужных моделей.

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

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

  • Язык определения данных (DDL) — эти команды помогают нам создать базу данных SQL и построить логические отношения на основе выбранной нами схемы. В основном это одноразовые действия, но хорошо знать эти команды.
  • Язык манипулирования данными (DML) — они помогают нам изменять сами данные, которые находятся в базе данных.
  • Язык управления данными (DCL) — мы используем его для предоставления и отзыва доступа к базе данных и ее содержимому.

Теперь давайте подробно рассмотрим каждый из них.

Язык определения данных (DDL)

Это набор команд, которые используются для создания и изменения баз данных.

  1. СОЗДАТЬ команду

Создать базу данных:

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

create database company;

Создать таблицу — для создания таблиц в базе данных.

Синтаксис:

CREATE TABLE TABLE_NAME (COLUMN_NAME DATATYPES[,….]);

Чтобы создать таблицу сотрудников, мы можем использовать следующий запрос

CREATE TABLE `employees` (
`employeeNumber` varchar(5) NOT NULL,
`lastName` varchar(12) DEFAULT NULL,
`firstName` varchar(12) DEFAULT NULL,
`reportsTo` varchar(5) DEFAULT NULL,
`jobTitle` varchar(25) DEFAULT NULL,
PRIMARY KEY (`employeeNumber`)
);

Как вы можете видеть в приведенном выше примере, мы определили каждый столбец в таблице с типом данных.

Ниже приведены типы данных, которые поддерживает SQL.

Числовой

INTEGER, SMALLINT, BIGINT
NUMERIC(w,d), DECIMAL(w,d) — numbers with width w and d decimal places
REAL, DOUBLE PRECISION — machine and database dependent
FLOAT(n) — floating-point number with n binary digits of precision

Персонаж

CHARACTER(L) — a fixed-length character of length L
CHARACTER VARYING(L) or VARCHAR(L) — supports the maximum length of L

Двоичный

BIT(L), BIT VARYING(L) — like corresponding characters
BINARY LARGE OBJECT(L) or BLOB(L)

Временный

DATE
TIME
TIMESTAMP

2. Команда ИЗМЕНИТЬ

Команды Alter используются для добавления/обновления/удаления столбцов из таблицы.

Добавление столбцов

Синтаксис:

ALTER TABLE table_name ADD column_name COLUMN-definition;

Например: если мы хотим добавить столбец адреса электронной почты в таблицу сотрудников:

ALTER table employees add column email varchar(50);

Изменение столбцов

Синтаксис:

ALTER TABLE MODIFY(COLUMN DEFINITION….);

Например: если мы хотим изменить тип данных столбца электронной почты на varchar (255)

ALTER table employees add column email varchar(50);

Удаление столбцов

Синтаксис:

ALTER TABLE table_name DROP COLUMN column_name;

Например: если мы хотим удалить столбец электронной почты

ALTER table employees drop column email

3. Команда УДАЛИТЬ

Команда Drop используется для удаления таблиц из базы данных.

Syntax : DROP TABLE table_name;

Например, чтобы удалить таблицу сотрудников

DROP TABLE employees

Язык манипулирования данными (DML)

Команды DML отвечают за выполнение всех типов модификации данных в базе данных.

1.Команда ВСТАВИТЬ

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

Синтаксис:

INSERT INTO table_name (col1, col2, col3,…. col N) VALUES (value1, value2, value3, …. valueN);

альтернативно,

INSERT INTO table_name VALUES (value1, value2, value3, …. valueN);

Например, чтобы вставить данные в таблицу сотрудников:

insert into employees
values
(1102, ‘Alex’, ‘Gerard’, ‘1056’, ‘Sales Manager’),
(1103, ‘Mary’, ‘Thomas’, ‘1102’, ‘Sales Executive’);

2. ОБНОВИТЬ команду

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

Синтаксис:

UPDATE table_name SET [column_name1= value1,…column_nameN = valueN] [WHERE CONDITION]

Например, чтобы обновить jobTitle сотрудника, мы можем использовать следующий запрос:

UPDATE employees
SET jobTitle=’Senior Sales Manager’
WHERE employeeNumber=1102;

3. УДАЛИТЬ команду

Удалить используется для удаления одной или нескольких строк из таблицы.

Синтаксис:

DELETE FROM table_name [WHERE condition];

Например:

DELETE FROM employees
WHERE employeeNumber=1102;

4. Команда SELECT

Команда select используется для извлечения данных из таблиц.

Синтаксис:

select (attributes)
from (table)
where (filter_condition)
group by (attributes_to_be_grouped_upon)
having (filter_condition_on_grouped_values)
order by (values)
limit (no_of_values_to_display);

Давайте рассмотрим несколько примеров:

  • Чтобы отобразить всю таблицу
select * from employees
  • Отображать только имя сотрудника
select firstName from employees
  • Чтобы отобразить сведения о сотруднике, номер сотрудника которого равен 1102
select * from employees where employeeNumber=1102;
  • Мы также можем агрегировать значения, выполнять групповые и упорядоченные операции в запросах Select.
select firstName from employees order by firstName;
select country, count(customerNumber) from customers group by country;

Язык управления данными (DCL)

Команды DCL используются для предоставления прав и разрешений системе баз данных. Команды DCL:

1.Grant — команда Grant предоставляет пользователю право доступа к базе данных.

Синтаксис:

GRANT <privileges> ON <database>.<object> TO ‘<user>’@’<host>’;

2.Revoke — команда отзыва отменяет права доступа, предоставленные командой предоставления.

Синтаксис:

REVOKE <privileges> ON <database>.<object> FROM’<user>’@’<host>’;

Заключение

Хотя SQL восходит к 1970-м годам, когда Эдгар Кодд писал об организации данных в базы данных, язык продолжает оставаться актуальным. Он прошел проверку временем, и почти каждая организация использует SQL или его производные. Этот блог призван помочь вам начать изучение SQL. Чтобы преуспеть в мире данных, убедитесь, что в вашем арсенале навыков работы с данными также есть SQL.