12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485 |
- -- -----------------------------------------------------------------
- -- Создание таблиц
- -- Таблица авторов
- create table author (
- author_id bigint generated always as identity primary key,
- name varchar(150) no null check (length(name) >= 3),
- description text check (length(description) >= 30)
- );
- -- Таблица категорий книг
- create table book_category (
- category_id int generated always as identity primary key,
- name varchar(150) not null check (length(name) >= 2)
- );
- -- Таблица книг
- create table book (
- book_id bigint generated always as identity primary key,
- name varchar(255) not null check (length(name) >= 2),
- author_id bigint not null references author(author_id),
- description text check (length(description) >= 30),
- cover varchar(255),
- category_id int not null references book_catefory(category_id)
- );
- -- -----------------------------------------------------------------
- -- Создание временных таблиц и вставка данных
- create temp table something (id serial, name text);
- insert into something (name) values('hello');
- insert into something (name) values('dratuti');
- -- -----------------------------------------------------------------
- -- Редактирование таблиц
- alter table
- -- -----------------------------------------------------------------
- -- Удаление таблиц
- drop table if exists author, book_category, book;
- -- -----------------------------------------------------------------
- -- Вставка данных
- insert into author (name, description) values (
- 'Михаил Шолохов',
- 'Великий русский советский писатель, журналист и киносценарист.'
- ), (
- 'Лусиану Рамальо',
- 'Автор замечательных книг по языку программирования Python'
- );
- -- -----------------------------------------------------------------
- -- Выборка данных
- -- Выбрать все данные из таблицы. Так нельзя делать в prodaction коде.
- select * from author;
- table author order by name desc limit 1;
- select name as Имя, description as Описание from book;
- -- Преобразование к верхнему регистру
- select upper(name) as Имя, lower(description) as Описание from book;
- -- Можно сослаться на конретную таблицу через .
- -- Последовательность: база данных -> схема -> таблица
- select book.name as Имя from rroom_db.public.book;
- show search_path;
- -- -----------------------------------------------------------------
- -- Заметки
- -- Остановился на 16 главе
- -- -----------------------------------------------------------------
- -- Мусор
- select |/25;
|