Лекция 85-88
Запросы на чтение данных. Оператор SELECT. Итоговые запросы на чтение. Агрегатные функции.
SQL используется для реализации всех функциональных возможностей, необходимых для управления БД, в том числе для:
- организация данных – SQL позволяет определять и изменять структуру представления данных, а также устанавливать отношения;
-обработка данных – SQL позволяет изменять содержимое базы данных: добавлять новые данные, удалять или обновлять уже имеющиеся в ней данные;
- управление доступом – SQL позволяет ограничивать возможности пользователя по чтению и изменению данных (защита данных от несанкционированного доступа) и координировать их совместное использование пользователями, работающим параллельно.
Типы данных
Тип данных | Обозначение | Пояснение |
Встроенные функции
Особенность встроенных функций – это ________________________________________________
_____________________________________________________________________________________
_________________________________________________________________________________
Группы встроенных функции:
______________________________________________________________________________
______________________________________________________________________________
______________________________________________________________________________
______________________________________________________________________________
______________________________________________________________________________
______________________________________________________________________________
______________________________________________________________________________
______________________________________________________________________________
Основные функции SQL
Функция | Значение |
SQL подразделятся на два подмножества команд:
DDL (Data Definition Language) - _______________________________________________________
DML (Data Manipulation Language) - ____________________________________________________
________________________________________________________________________________
________________________________________________________________________________
Команды DDL
Команда | Назначение |
Команды DML
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 - _________________________________________________________________________
___________________________________________________________________________________
UPDATE имя_таблицы SET имя_поля = значение [WHERE критерий]
Если опустить оператор WHERE, то будут обновлены данные во всех определенных полях таблицы. Для примера, поменяем номер телефона Сергея Иванова:
UPDATE friends SET phone = '255-55-55' WHERE name = 'Сергей Иванов'
DELETE - ____________________________________________________________________________
_________________________________________________________________________________
DELETE FROM имя_таблицы [WHERE критерий]
Для примера, давайте удалим Сергея Иванова из нашей таблицы :) :
DELETE FROM friends WHERE name = 'СергейИванов'
SQL - Оператор SELECT
Запрос – _____________________________________________________________________________
_____________________________________________________________________________________
Все запросы по выборке данных в SQL конструируются с помощью оператора SELECT.
Он позволяет выполнять довольно сложные проверки и обработку данных.
Запрос может выводить данные из определенного столбца или изо всех столбцов таблицы. Чтобы создать простейших SELECT запрос, необходимо указать имя столбца и название таблицы.
SELECT Ключевое слово, которое сообщает базе данных о том, что оператор является запросом. Все запросы начинаются с этого слова, за ним следует пробел.
Column_list Список столбцов таблицы, которые выбираются запросом. Столбцы, не указанные в операторе, не будут включены в результат. Если необходимо вывести данные всех столбцов, можно использовать сокращенную запись. Звездочка (*) означает полный список столбцов.
FROM table_name Ключевое слово, которое должно присутствовать в каждом запросе. После него через пробел указывается имя таблицы, являющейся источником данных.
Домашняя работа:
Выучить лекцию.
8