SQL Синтаксис
SQL (Structured Query Language) — это стандартный язык, используемый для управления реляционными базами данных и работы с ними, включая такие функции, как запрос данных, вставка данных, обновление данных, удаление данных, а также создание и изменение структуры базы данных.

Таблицы базы данных
База данных обычно содержит одну или несколько таблиц. Каждая таблица имеет идентификатор имени (например, "Websites"), и таблица содержит записи (строки) с данными.
В этом руководстве мы создали таблицу Websites в базе данных EXAMPLE в MySQL для хранения записей о веб-сайтах.
Мы можем просмотреть данные таблицы "Websites" с помощью следующей команды:
mysql> use EXAMPLE; Database changed mysql> set names utf8; Query OK, 0 rows affected (0.00 sec) mysql> SELECT * FROM Websites; +----+--------------+---------------------------+-------+---------+ | id | name | url | alexa | country | +----+--------------+---------------------------+-------+---------+ | 1 | Google | https://www.google.cm/ | 1 | USA | | 2 | 淘宝 | https://www.taobao.com/ | 13 | CN | | 3 | Example | http://www.example.com/ | 4689 | CN | | 4 | 微博 | http://weibo.com/ | 20 | CN | | 5 | Facebook | https://www.facebook.com/ | 3 | USA | +----+--------------+---------------------------+-------+---------+ 5 rows in set (0.01 sec)
Объяснение
- use EXAMPLE;Команда используется для выбора базы данных.
- set names utf8;Команда используется для установки используемого набора символов.
- SELECT * FROM Websites;Прочитать информацию из таблицы данных.
- Приведённая выше таблица содержит пять записей (каждая соответствует информации об одном веб-сайте) и 5 столбцов (id, name, url, alexa и country).
SQL-инструкции
Большая часть работы, которую вам нужно выполнить с базой данных, выполняется с помощью SQL-инструкций.
Следующая инструкция SQL выбирает все записи из таблицы "Websites":
Примеры
В этом руководстве мы объясним вам различные SQL-инструкции.
Пожалуйста, помните...
- SQL не чувствителен к регистру: SELECT — то же самое, что select.
Точка с запятой после SQL-инструкций?
Некоторые системы баз данных требуют точку с запятой в конце каждой SQL-инструкции.
Точка с запятой — стандартный способ разделения каждого SQL-оператора в системах баз данных, чтобы более одного SQL-оператора можно было выполнить в одном запросе к серверу.
В этом руководстве мы будем использовать точку с запятой в конце каждого SQL-оператора.
Некоторые из наиболее важных команд SQL
- SELECT- Извлечение данных из базы данных
- UPDATE- Обновление данных в базе данных
- DELETE- Удаление данных из базы данных
- INSERT INTO- Вставка новых данных в базу данных
- CREATE DATABASE- Создание новой базы данных
- ALTER DATABASE- Изменение базы данных
- CREATE TABLE- Создание новой таблицы
- ALTER TABLE- Изменение (alter) таблиц базы данных
- DROP TABLE- Удаление таблицы
- CREATE INDEX- Создать индекс (ключ поиска)
- DROP INDEX- Удалить индекс
Ниже приведены некоторые часто используемые SQL-инструкции и синтаксис:
SELECT: Используется для запроса данных из базы данных.
SELECT column_name(s) FROM table_name WHERE condition ORDER BY column_name [ASC|DESC]
column_name(s): Столбец для запроса.table_name: Таблица для запроса.condition: Условия запроса (необязательно).ORDER BY: Способ сортировки,ASCуказывает на сортировку по возрастанию,DESCуказывает на сортировку по убыванию (необязательно).
INSERT INTO: Используется для вставки новых данных в таблицу базы данных.
INSERT INTO table_name (column1, column2, ...) VALUES (value1, value2, ...)
table_name: Таблица, в которую вставляются данные.column1, column2, ...: Столбцы, в которые вставляются данные.value1, value2, ...: Значения, соответствующие столбцам.
UPDATE: Используется для обновления существующих данных в таблице базы данных.
UPDATE table_name SET column1 = value1, column2 = value2, ... WHERE condition
table_name: Таблица, в которой обновляются данные.column1 = value1, column2 = value2, ...: Столбцы для обновления и их новые значения.condition: Условия обновления.
DELETE: Используется для удаления данных из таблицы базы данных.
DELETE FROM table_name WHERE condition
table_name: Таблица, из которой удаляются данные.condition: Условия удаления.
CREATE TABLE: Используется для создания новой таблицы базы данных.
CREATE TABLE table_name (
column1 data_type constraint,
column2 data_type constraint,
...
)
table_name: Имя создаваемой таблицы.column1, column2, ...: Столбцы таблицы.data_type: Типы данных столбцов (такие какINT、VARCHARи т.д.).constraint: Ограничения столбцов (такие какPRIMARY KEY、NOT NULLи т.д.).
ALTER TABLE: Используется для изменения структуры существующей таблицы базы данных.
ALTER TABLE table_name ADD column_name data_type
table_name: Таблица для изменения.column_name: Столбец для добавления.data_type: Тип данных столбца.
Или:
ALTER TABLE table_name DROP COLUMN column_name
column_name: Столбец для удаления.
DROP TABLE: Используется для удаления таблицы базы данных.
DROP TABLE table_name
table_name: Таблица для удаления.
CREATE INDEX: Используется для создания индекса для ускорения запросов.
CREATE INDEX index_name ON table_name (column_name)
index_name: Имя индекса.column_name: Столбец для индексирования.
DROP INDEX: Используется для удаления индекса.
DROP INDEX index_name ON table_name
index_name: Имя индекса, который нужно удалить.table_name: Таблица, в которой находится индекс.
WHERE: Используется для указания условий фильтрации.
SELECT column_name(s) FROM table_name WHERE condition
condition: Условие фильтрации.
ORDER BY: Используется для сортировки результирующего набора.
SELECT column_name(s) FROM table_name ORDER BY column_name [ASC|DESC]
column_name: Столбец, используемый для сортировки.ASC: По возрастанию (по умолчанию).DESC: По убыванию.
GROUP BY: Используется для группировки результирующего набора по одному или нескольким столбцам.
SELECT column_name(s), aggregate_function(column_name) FROM table_name WHERE condition GROUP BY column_name(s)
aggregate_function: Агрегатные функции (такие как COUNT, SUM, AVG и т. д.).
HAVING: Используется для фильтрации сгруппированного результирующего набора.
SELECT column_name(s), aggregate_function(column_name) FROM table_name GROUP BY column_name(s) HAVING condition
condition: Условие фильтрации.
JOIN: Используется для объединения записей из двух или более таблиц.
SELECT column_name(s) FROM table_name1 JOIN table_name2 ON table_name1.column_name = table_name2.column_name
JOIN: Может быть INNER JOIN, LEFT JOIN, RIGHT JOIN или FULL JOIN.
DISTINCT: Используется для возврата уникальных и различных значений.
SELECT DISTINCT column_name(s) FROM table_name
column_name(s): Столбец для запроса.
Другие расширения