Урок 2: Говорим на языке баз данных — Основные команды SQL


Lesson2

Урок 2: Говорим на языке баз данных — Основные команды SQL

С возвращением, будущий волшебник данных! Теперь, когда ваше королевство PostgreSQL окончательно поднялось с колен, пришло время научиться разговаривать с вашими данными. И нет, я не имею в виду нашёптывать таблицам комплименты (хотя, если вам так проще, дерзайте!). Сегодня мы изучим основы SQL — языка, который позволяет вам отдавать команды своим базам данных с точностью (и, возможно, с небольшим юмором).

Что такое SQL?

SQL (читается как “эс-кью-эль” или “сиквел” — выбирайте сами) расшифровывается как Structured Query Language. Это основной способ общения с реляционными базами данных. Представьте SQL как Google Translate, только для ваших данных. Хотите вытащить все строки из таблицы? SQL уже на готове. Хотите добавить, удалить или изменить информацию? SQL говорит: «Да легко, хозяин!»

Короче говоря, если бы PostgreSQL был вашим верным слугой, то SQL — это те самые приказы, которые вы пишете на записках и кидаете на стол: «Купи молоко и не забудь вымыть пол!»

Основные команды SQL: Строим фундамент

Прежде чем начнем создавать сложные запросы, похожие на древние манускрипты, давайте разберемся с основами. Вот, что мы сегодня будем изучать:

  1. CREATE TABLE: Строим домик для данных.
  2. INSERT INTO: Приглашаем данные на новоселье.
  3. SELECT: Спрашиваем, кто дома.
  4. UPDATE: Переставляем мебель (или меняем данные).
  5. DELETE: Вежливо провожаем данные до выхода (ну или с пинком).

1. CREATE TABLE

Команда CREATE TABLE — это ваша отправная точка. Представьте, что вы закладываете фундамент замка — без этого вашим данным некуда будет податься.

CREATE TABLE rycari (
    id SERIAL PRIMARY KEY,
    imya VARCHAR(100),
    missiya VARCHAR(255),
    lyubimyy_cvet VARCHAR(50)
);

В этом примере мы создаем таблицу rycari с четырьмя столбцами: id, imya, missiya и lyubimyy_cvet. Обратите внимание, как мы задаем тип данных для каждого столбца (например, VARCHAR для текстовых полей). SERIAL PRIMARY KEY для id означает, что каждому рыцарю присваивается уникальный идентификатор — на случай, если придется всех пересчитывать.

2. INSERT INTO

Теперь, когда у нас есть таблица, давайте добавим туда несколько рыцарей. Используйте команду INSERT INTO, чтобы заполнить вашу таблицу данными — как добавление гостей в список на вечеринку.

INSERT INTO rycari (imya, missiya, lyubimyy_cvet)
VALUES ('Сэр Ланселот', 'Искать Святой Грааль', 'Синий'),
       ('Сэр Галахад', 'Найти Грааль', 'Красный'),
       ('Король Артур', 'Править Камелотом', 'Зелёный');

Здесь мы приглашаем трёх рыцарей присоединиться к нашему круглому столу. Помните: с INSERT INTO сначала указываются имена столбцов, а затем значения в скобках.

3. SELECT

Когда таблица заполнена, пришло время узнать, кто у нас там сидит. Команда SELECT — это как постучаться в дверь и спросить: «Кто дома?»

SELECT * FROM rycari;

Звездочка * означает «выбрать всё», и PostgreSQL вернёт все столбцы для каждого рыцаря в таблице. Если вам интересно узнать только их любимые цвета (ну а что, у каждого свои интересы), можно уточнить:

SELECT imya, lyubimyy_cvet FROM rycari;

Теперь вы увидите таблицу только с именами и их цветами. Легкотня!

4. UPDATE

Передумали насчёт любимого цвета сэра Галахада? Не беда! Используйте команду UPDATE, чтобы изменить существующие данные, как если бы вы перекрашивали стену в гостиной.

UPDATE rycari
SET lyubimyy_cvet = 'Желтый'
WHERE imya = 'Сэр Галахад';

Клаузула WHERE говорит PostgreSQL, какую строку обновить. Без неё вы перекрасите весь замок в желтый — а если вы не фанат жёлтого, это точно не то, что вам нужно.

5. DELETE

И, наконец, если рыцарь решил уйти на покой (или вы просто хотите расчистить место), можно использовать команду DELETE.

DELETE FROM rycari
WHERE imya = 'Король Артур';

Опять же, без WHERE вы удалите всех рыцарей. А пустой круглый стол… ну, это уже просто депрессивное зрелище.

Собираем всё вместе

Вот небольшой скрипт, чтобы проверить всё, что мы сегодня изучили:

CREATE TABLE rycari (
    id SERIAL PRIMARY KEY,
    imya VARCHAR(100),
    missiya VARCHAR(255),
    lyubimyy_cvet VARCHAR(50)
);

INSERT INTO rycari (imya, missiya, lyubimyy_cvet)
VALUES ('Сэр Ланселот', 'Искать Святой Грааль', 'Синий'),
       ('Сэр Галахад', 'Найти Грааль', 'Красный'),
       ('Король Артур', 'Править Камелотом', 'Зелёный');

SELECT * FROM rycari;

UPDATE rycari
SET lyubimyy_cvet = 'Желтый'
WHERE imya = 'Сэр Галахад';

DELETE FROM rycari
WHERE imya = 'Король Артур';

SELECT * FROM rycari;

Попробуйте выполнить этот скрипт в вашем терминале PostgreSQL и посмотрите, как всё оживает!

Итог: Что мы сегодня узнали?

Сегодня мы рассмотрели основные команды SQL, которые позволяют создавать, изменять и просматривать данные:

  • CREATE TABLE: Создаём новую таблицу.
  • INSERT INTO: Добавляем новые строки в таблицу.
  • SELECT: Просматриваем данные в таблице.
  • UPDATE: Изменяем существующие данные.
  • DELETE: Удаляем строки из таблицы.

Что дальше?

На следующем уроке мы погрузимся в мир Joins и Взаимосвязей — как заставить таблицы общаться между собой, как старых друзей. До тех пор продолжайте практиковаться в своих SQL-заклинаниях и помните: с большой властью приходит большая ответственность… особенно с командой DELETE!

Готовы продолжать? Переходите к Уроку 3: Joins и Взаимосвязи.


Добро пожаловать в мир языка баз данных. Пусть ваши запросы будут быстрыми, а результаты — точными!