Загрузка данных


CREATE TABLE rooms (
    id serial PRIMARY KEY,
    room_number varchar(10) NOT NULL,
    room_type varchar(30),
    seats int,
    has_projector boolean DEFAULT false,
    opened_date timestamp
);

CREATE TABLE lessons (
    id serial PRIMARY KEY,
    room_id integer NOT NULL REFERENCES rooms(id),
    subject varchar(60) NOT NULL,
    duration_min integer,
    starts_at timestamp
);

CREATE TABLE students (
    id serial PRIMARY KEY,
    last_name varchar(50) NOT NULL,
    birth_date date,
    gpa numeric(3,2)
);

INSERT INTO rooms 
(room_number, room_type, seats, has_projector, opened_date)
VALUES 
('312', 'компьютерный', 25, true, '2020-09-01'),
('208', 'лекционный', 60, true, '2018-09-01'),
('105', 'лаборатория', 15, false, '2022-01-15');

INSERT INTO students (last_name, birth_date, gpa)
VALUES 
('Иванов', '2009-03-14', 4.55),
('Петрова', '2008-11-02', 4.90);

INSERT INTO lessons 
(room_id, subject, duration_min, starts_at)
VALUES 
(1, 'Основы работы с базами данных', 90, '2026-09-02 09:00'),
(1, 'Веб-разработка', 90, '2026-09-02 10:40'),
(2, 'Математика', 45, '2026-09-02 09:00');

SELECT * FROM students;

SELECT room_number, seats FROM rooms 
WHERE seats > 20 
ORDER BY seats DESC;