Содержание
- 3. Типы данных в разных СУБД
- 4. операторы манипуляции данными (Data Manipulation Language, DML): SELECT считывает данные, удовлетворяющие заданным условиям; INSERT добавляет новые
- 5. БД для примеров
- 6. SELECT
- 8. SELECT SELECT * FROM artists; SELECT albums.name, albums.id, albums.date FROM albums; SELECT name, length FROM records
- 9. Условия в SQL AND, OR, NOT >, =, =, !=, IS NULL, IS NOT NULL
- 10. Сложные условия в SQL LIKE BETWEEN IN, NOT IN ANY, ALL EXISTS CASE … WHEN …
- 11. Экзотические условия в SQL COALESCE NULLIF …
- 12. Примеры с несколькими условиями SELECT albums.id FROM albums WHERE albums.id = 1 OR (albums.name NOT LIKE
- 13. Фильтрация результатов и псевдонимы SELECT DISTINCT length FROM records; SELECT DISTINCT a.id_studio FROM albums a; SELECT
- 14. Троичная логика
- 16. Схемы сложных условий
- 18. Сортировка выборки SELECT * FROM records r WHERE r.id_album = 1 ORDER BY r.length; SELECT DISTINCT
- 19. Агрегатные функции
- 20. Агрегатные функции SELECT count(*) FROM records r WHERE r.length SELECT count(DISTINCT r.length) FROM records r ;
- 21. Группировка SELECT a.id_artist "artist id", AVG(age(a.date)) AS "average album age" FROM albums a WHERE a.id_file_format =
- 22. Горизонтальное соединение результатов запроса
- 23. Объединение результатов запроса
- 24. Примеры объединения таблиц SELECT * FROM albums a INNER JOIN records r ON a.id = r.id_album;
- 25. Вложенные запросы
- 26. Примеры подзапросов SELECT r.*, a.name FROM records r INNER JOIN albums a ON a.id = r.id_album
- 27. Примеры подзапросов SELECT * FROM albums a INNER JOIN (SELECT AVG(length(r.name)) "average track name length", MAX(r.length)
- 28. Предикаты ANY, ALL, EXISTS SELECT * FROM albums a INNER JOIN artists ar ON ar.id =
- 29. Примеры HAVING SELECT a.name FROM (SELECT r.id_album FROM records r GROUP BY r.id_album HAVING SUM(r.length) >
- 30. Операторы UNION, INTERSECT, EXCEPT SELECT a.name, a.date FROM albums a WHERE a.name NOT LIKE '%The%' UNION
- 31. INSERT
- 32. Примеры INSERT INSERT INTO artists (id, name, birthday) VALUES (42, 'Nick Cage', '15-03-1900'); INSERT INTO studio
- 33. UPDATE UPDATE artists SET id = 43 WHERE id = 2; UPDATE records SET length =
- 34. DELETE DELETE FROM records WHERE records.id DELETE FROM albums WHERE id_studio IN (SELECT s.id FROM studio
- 35. Транзакции BEGIN TRANSACTION; / BEGIN; SAVE TRANSACTION; COMMIT TRANSACTION; / COMMIT; ROLLBACK TO; ROLLBACK;
- 36. Объединение запросов с помощью транзакций BEGIN; CREATE TABLE studio ( id serial NOT NULL, name character
- 37. Объединение запросов с помощью транзакций BEGIN; CREATE TABLE file_format ( id serial NOT NULL, name character
- 38. SQL-инъекции
- 39. NOSQL
- 41. Скачать презентацию