SQL. Structured Query Language презентация

Содержание

операторы манипуляции данными (Data Manipulation Language, DML): SELECT считывает данные, удовлетворяющие заданным условиям, INSERT добавляет новые данные, UPDATE изменяет существующие данные, DELETE удаляет данные; операторы определения данных (Data Definition Language,

Слайд 1Structured Query Language


Слайд 2


Слайд 3операторы манипуляции данными (Data Manipulation Language, DML):
SELECT считывает данные, удовлетворяющие заданным

условиям,
INSERT добавляет новые данные,
UPDATE изменяет существующие данные,
DELETE удаляет данные;

операторы определения данных (Data Definition Language, DDL):
CREATE создает объект БД (саму базу, таблицу, представление, пользователя и т. д.),
ALTER изменяет объект,
DROP удаляет объект;

операторы управления транзакциями (Transaction Control Language, TCL):
COMMIT применяет транзакцию,
ROLLBACK откатывает все изменения, сделанные в контексте текущей транзакции,
SAVEPOINT делит транзакцию на более мелкие участки.

операторы определения доступа к данным (Data Control Language, DCL):
GRANT предоставляет пользователю (группе) разрешения на определенные операции с объектом,
REVOKE отзывает ранее выданные разрешения,
DENY задает запрет, имеющий приоритет над разрешением;

Подмножества команд SQL


Слайд 4SELECT


Слайд 5БД для примеров


Слайд 6SELECT
SELECT * FROM foo;

SELECT foo.bar FROM foo;

SELECT foo.bar FROM foo WHERE

foo.id = 1;

Слайд 7Условия в SQL
AND, OR, NOT

>,

NULL, IS NOT NULL

Слайд 8Сложные условия в SQL
LIKE

BETWEEN

IN, NOT IN

ANY, ALL

EXISTS

HAVING

CASE … WHEN … THEN

… ELSE … END

Слайд 9Экзотические условия в SQL
COALESCE

NULLIF



Слайд 10Примеры с несколькими условиями
SELECT foo.bar
FROM foo
WHERE foo.id = 1

OR
(foo.name LIKE ‘%th%’ AND
foo.bar BETWEEN 10 AND 100);

SELECT foo.bar
FROM foo
WHERE foo.id = 1 AND
(foo.bar IS NOT NULL OR id IN (4, 8, 15, 16, 413));


Слайд 11Фильтрация результатов и псевдонимы
SELECT DISTINCT * FROM foo;

SELECT DISTINCT f.bar FROM

foo f;

SELECT CASE
WHEN foo.id > 3 THEN ‘yep'
WHEN n <= 3 THEN ‘nope'
ELSE ‘WAT' END AS result
FROM foo
WHERE foo.id > 9 AND foo.id < 613;


Слайд 12Троичная логика


Слайд 14Схемы сложных условий


Слайд 16Сортировка выборки
SELECT *
FROM foo f
WHERE f.id > 100
ORDER

BY f.bar;

SELECT DISTINCT f.bar
FROM foo f
ORDER BY f.bar DESC;


Слайд 17Агрегатные функции


Слайд 18Агрегатные функции
SELECT count(*)
FROM foo f
WHERE f.id > 100;

SELECT MAX(f.id)


FROM foo f;

SELECT AVG(f.id)
FROM foo f
WHERE f.name LIKE ‘%bar’;


Слайд 19Группировка
SELECT f.bar “foo”, AVG(f.id) AS “average”
FROM foo f
WHERE f.name LIKE

‘%bar’
GROUP BY f.bar;


Слайд 20Объединение результатов запроса


Слайд 21Примеры объединения таблиц
SELECT *
FROM foo f
INNER JOIN items i


ON f.id = i.foo_id;

SELECT i.id, f.id, f.bar
FROM items i
LEFT OUTER JOIN foo f
ON f.id = i.foo_id;
WHERE i.id BETWEEN 100 AND 3011
AND f.name IS NOT NULL;


Слайд 22Вложенные запросы


Слайд 23Примеры подзапросов
SELECT *
FROM items i
WHERE i.foo_id IN (
SELECT f.id
FROM

foo f
WHERE f.bar = ‘foo’);

SELECT *
FROM foo f
WHERE f.id >
(SELECT MAX(i.price)
FROM item i
WHERE i.foo_id IS NOT NULL);


Слайд 24Примеры подзапросов
SELECT *
FROM items i
INNER JOIN
(SELECT f.id, f.bar, f.name


FROM foo f
WHERE f.name = ‘foo’) g
ON g.id = i.foo_id;


Слайд 25Предикаты ANY, ALL, EXISTS
SELECT *
FROM item i
WHERE i.price = ANY


(SELECT f.id
FROM foo f
WHERE f.bar > 100);

SELECT *
FROM item i
WHERE i.price > ALL
(SELECT f.id
FROM foo f
WHERE f.name IS NULL);


Слайд 26Примеры HAVING
SELECT SUM(i.price) FROM item I
GROUP BY i.foo_id
HAVING SUM(i.price) > 100;

SELECT

SUM(i.price) FROM item I
GROUP BY i.foo_id
HAVING SUM(i.price) >
(SELECT MAX(f.bar)
FROM foo f
WHERE name NOT LIKE ‘no%pe’);


Слайд 27Операторы UNION, INTERSECT, EXCEPT
SELECT f.id FROM foo f
WHERE f.name IS NOT

NULL
UNION
SELECT i.foo_id
FROM item i;

SELECT i.foo_id
FROM item i
UNION ALL
SELECT f.id FROM foo f
WHERE f.name IS NOT NULL;


Слайд 29Примеры INSERT
INSERT INTO foo (id, name, bar) VALUES (42, ‘Nick Cage’,

100500);

INSERT INTO item (id, price) VALUES(12, -8);

INSERT INTO item VALUES (13, 42, 111);

Слайд 30UPDATE
UPDATE foo SET bar = NULL WHERE id = 42;

UPDATE item

SET price = price * 2
WHERE foo_id IN (SELECT foo.id FROM foo);

Слайд 31DELETE
DELETE FROM foo WHERE foo.id < 100;

DELETE FROM foo
WHERE id

IN
(SELECT i.foo_id FROM item i WHERE i.id > 0);

DELETE FROM item;

Слайд 32Транзакции
BEGIN TRANSACTION; / BEGIN;

SAVE TRANSACTION;

COMMIT TRANSACTION; / COMMIT;

ROLLBACK TO;

ROLLBACK;


Обратная связь

Если не удалось найти и скачать презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое ThePresentation.ru?

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


Для правообладателей

Яндекс.Метрика