Шпаргалка по SQL

CRUD — это базовые функции для работы с базами данных.
Create — создаём, Read — читаем, Update — обновляем, Delete — удаляем.

Добавление записи INSERT

INSERT INTO <имя таблицы> (<имена столбцов>, ...) VALUES (<значения>, ...);
INSERT INTO blog (user, birth_year) VALUES ('Igor Markin', 1990);

Чтение записи SELECT

SELECT <перечень столбцов> FROM <перечень таблиц> WHERE <условия>;
SELECT DISTINCT birth_year FROM blog; - уникальные значения
SELECT * FROM blog;

Изменение записи UPDATE

UPDATE <таблица> SET <столбец> = <значение>, ... WHERE <условие>;
UPDATE blog SET user = 'Markin Igor' WHERE user = 'Igor Markin';

Удаление записи DELETE

DELETE FROM <таблица> WHERE <условие>; 
DELETE FROM blog WHERE user = 'Markin Igor';

Конструкция SQL-запроса

SELECT *** - выбираем нужные данные
FROM *** - из таблицы
WHERE *** - где выполняется условие
GROUP BY *** - группируем по
HAVING *** - из того, что получилось выбираем по условию
ORDER BY *** - сортируем по столбцу
LIMIT *** - ограничиваем вывод

Операторы

OR, NOT, AND, IN, BETWEEN, LIKE, ILIKE
> , < , >= , <= , <> , !=

BETWEEN <значение 1> AND <значение 2> — выбирает значение между указанными, включая сами значения.
name LIKE ’igor mar%’ — поиск по шаблону с учётом регистра, найдёт ’Igor Markin’.
name ILIKE ’igor mak%’ — поиск без учёта регистра, найдёт ’Igor Markin’.
% — заменяет любой набор символов.

Функции

COUNT() — считает количество записей
MIN() — ищет минимальное значение
MAX() — ищет максимальное значение
AVG() — вычисляет среднее значение

EXCTRACT(<ДАТА> FROM <столбец>) — извлекает дату

  • century — век;
  • day  — день;
  • doy (от англ. day of the year) — день года: от 1 до 365/366;
  • isodow — день недели: понедельник — 1, воскресенье — 7;
  • hour — час;
  • milliseconds — миллисекунда;
  • minute — минута;
  • second — секунда;
  • month — месяц;
  • quarter — квартал;
  • week — неделя в году;
  • year — год.

DATE_TRUNC(<ДАТА>, <столбец>) — усекает дату

  • microseconds — микросекунды;
  • milliseconds — миллисекунды;
  • second — секунда;
  • minute — минута;
  • hour — час;
  • day — день;
  • week — неделя;
  • month — месяц;
  • quarter — квартал;
  • year — год;
  • decade — декада года;
  • century — век.

AS — задаёт псевдоним для столбца

Нельзя использовать псевдонимы из SELECT в WHERE и т. д. так как порядок выполнения SQL запроса таков:

FROM
WHERE
GROUP BY
HAVING
SELECT
ORDER BY

ORDER BY — сортировка

ASC сортирует данные в порядке возрастания. Это аргумент ORDER BY по умолчанию.
DESC сортирует данные по убыванию.

Типы данных и преобразование

integer — целочисленный тип. В SQL диапазон целых чисел от -2147483648 до 2147483647.
real — число с плавающей точкой. Точность числа типа real до 6 десятичных разрядов.

varchar(n) — строка переменной длины, где n — ограничение.
text — строка любой длины.

timestamp — дата и время.
date — дата.

boolean — логический тип данных. TRUE — «истина», FALSE — «ложь» и NULL — «неизвестно».

Типы преобразуют конструкцией CAST:

CAST (<столбец> AS <тип данных>) или <столбец> :: <тип данных>
Поделиться
Отправить
 113   4 мес   SQL
Популярное