Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗goSpDpMx 231 of 280 menu
◀ ▶

Смешанная практика базы в Go

В этих задачах смешаем выборку, связь и запись. Таблицы заданы текстом создания и вставки.

Дана таблица:

CREATE TABLE bins ( id INTEGER PRIMARY KEY, sku TEXT NOT NULL, qty INTEGER NOT NULL ); INSERT INTO bins (sku, qty) VALUES ('wire', 4); INSERT INTO bins (sku, qty) VALUES ('tape', 1);

Вставьте "bolt" с qty 10, затем выведите sku с наибольшим qty.

Даны таблицы:

CREATE TABLE teams ( id INTEGER PRIMARY KEY, name TEXT NOT NULL ); CREATE TABLE members ( id INTEGER PRIMARY KEY, team_id INTEGER NOT NULL, nick TEXT NOT NULL, FOREIGN KEY (team_id) REFERENCES teams (id) ); INSERT INTO teams (name) VALUES ('alpha'); INSERT INTO members (team_id, nick) VALUES (1, 'ann'); INSERT INTO members (team_id, nick) VALUES (1, 'bob');

Выведите название команды и псевдоним каждого участника. Затем вставьте участника "kim" в "alpha" и снова выведите COUNT(*) в members.

Даны таблицы:

CREATE TABLE projects ( id INTEGER PRIMARY KEY, title TEXT NOT NULL ); CREATE TABLE tasks ( id INTEGER PRIMARY KEY, project_id INTEGER NOT NULL, label TEXT NOT NULL, done INTEGER NOT NULL, FOREIGN KEY (project_id) REFERENCES projects (id) ); INSERT INTO projects (title) VALUES ('site'); INSERT INTO tasks (project_id, label, done) VALUES (1, 'layout', 1); INSERT INTO tasks (project_id, label, done) VALUES (1, 'forms', 0);

Выведите заголовок проекта и подпись каждой задачи, где done равно 0.

Даны таблицы:

CREATE TABLE carriers ( id INTEGER PRIMARY KEY, code TEXT NOT NULL ); CREATE TABLE parcels ( id INTEGER PRIMARY KEY, carrier_id INTEGER NOT NULL, weight REAL NOT NULL, FOREIGN KEY (carrier_id) REFERENCES carriers (id) ); INSERT INTO carriers (code) VALUES ('fast'); INSERT INTO carriers (code) VALUES ('slow'); INSERT INTO parcels (carrier_id, weight) VALUES (1, 2.5); INSERT INTO parcels (carrier_id, weight) VALUES (1, 1); INSERT INTO parcels (carrier_id, weight) VALUES (2, 4);

Для каждого кода перевозчика выведите сумму weight после связи таблиц и группировки.

Дана таблица:

CREATE TABLE sessions ( id INTEGER PRIMARY KEY, user_name TEXT NOT NULL, minutes INTEGER NOT NULL ); INSERT INTO sessions (user_name, minutes) VALUES ('ann', 20); INSERT INTO sessions (user_name, minutes) VALUES ('ann', 15); INSERT INTO sessions (user_name, minutes) VALUES ('bob', 10);

Удалите строки "bob", вставьте для "ann" еще 5 минут и выведите сумму minutes для "ann".

Даны таблицы:

CREATE TABLE labs ( id INTEGER PRIMARY KEY, room TEXT NOT NULL ); CREATE TABLE samples ( id INTEGER PRIMARY KEY, lab_id INTEGER NOT NULL, tag TEXT NOT NULL, FOREIGN KEY (lab_id) REFERENCES labs (id) ); INSERT INTO labs (room) VALUES ('101'); INSERT INTO labs (room) VALUES ('102'); INSERT INTO samples (lab_id, tag) VALUES (1, 'a1');

Выведите комнату и метку каждого образца. Для комнаты "102" покажите "none", если образца нет. Оставь строку слева, даже если справа пусто.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить