Язык SQL запросов

 

 

О командах DDL

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

DROP — используется для удаления столбцов и индексов.

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

Команды DML

SELECT — наиболее часто используемая команда, применяется для получения набора данных из таблицы базы данных. Команда SELECT имеет следующий синтаксис:

SELECT список_полей1 FROM имя_таблицы [WHERE критерий ORDER BY список_полей2 [ASC | DESC]]

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

Для примера создадим простейший запрос на получение данных из полей «name» и «phone» таблицы «friends»:

SELECT name, phone FROM friends

Если необходимо получить все поля таблицы, то не обязательно их перечислять, достаточно поставить звездочку (*):

SELECT * FROM friends

Для исключения из выводимого списка повторяющихся записей, используется ключевое слово DISTINCT:

SELECT DISTINCT name FROM friends

Если необходимо получить отдельную запись, то используется оператор WHERE. Например, нам надо получить из таблицы «friends» номер телефона «Сергей Иванов»:

SELECT * FROM friends WHERE name = ‘ Сергей Иванов’

или наоборот, нам надо узнать кому принадлежит телефон 293-89-13:

SELECT * FROM friends WHERE phone = 293-89-13′

Помимо этого можно использовать подстановочные символы, таким образом, создавая шаблоны поиска. Для этого используется оператор LIKE. Оператор LIKE имеет следующие операторы подстановки:

* — соответствует строке состоящей из одного или более символов;

_ — соответствует одному любому символу;

[] — соответствует одному символу из определенного набора;

Например, для получения записей из поля «name» содержащих слово «Сергей», запрос будит выглядеть следующим образом:

SELECT * FROM friends WHERE name LIKE ‘*Сергей*’

Для определения порядка, в котором возвращаются данные, используется оператор ORDER BY. Без этого оператора порядок возвращаемых данных невозможно предсказать. Ключевые слова ASC и DESC позволяют определить направление сортировки. ASC — упорядочивает по возрастанию, а DESC — по убыванию.

Например, запрос на получение списка записей из поля «name» в алфавитном порядке будет выглядеть следующим образом:

SELECT * FROM friends ORDER BY name

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

INSERT — данная команда служит для добавления новой записи в таблицу. Записывается она следующим образом:

INSERT INTO имя_таблицы VALUES (список_значений)

Обратим внимание на то, что типы значений в списке значений должны соответствовать типам значений полей таблицы, например:

INSERT INTO friends VALUES (‘Анна Осипова’, ‘495-09-81’)

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

UPDATE — эта команда применяется для обновления данных в таблице и чаще всего используется совместно с оператором WHERE. Команда UPDATE имеет следующий синтаксис:

UPDATE имя_таблицы SET имя_поля = значение [WHERE критерий]

Если опустить оператор WHERE, то будут обновлены данные во всех определенных полях таблицы. Для примера, поменяем номер телефона Сергея Иванова:

UPDATE friends SET phone = ‘255-55-55’ WHERE name = ‘Сергей Иванов’

DELETE — как вы уже наверное поняли, эта команда служит для удаления записей из таблицы. Как и UPDATE, команда DELETE обычно используется с оператором WHERE, если этот оператор пропустить, то будут удалены все данные из указанной таблицы. Синтаксис команды DELETE выглядит следующим образом:

DELETE FROM имя_таблицы [WHERE критерий]

Для примера, давайте удалим Сергея Иванова из нашей таблицы 🙂 :

DELETE FROM friends WHERE name = ‘Сергей Иванов’