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

Практика на одну таблицу в Go

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

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

CREATE TABLE payments ( id INTEGER PRIMARY KEY, label TEXT NOT NULL, amount REAL NOT NULL ); INSERT INTO payments (label, amount) VALUES ('rent', 120); INSERT INTO payments (label, amount) VALUES ('food', 45.5); INSERT INTO payments (label, amount) VALUES ('bus', 12);

Создайте таблицу, вставьте строки и выведите сумму столбца amount.

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

CREATE TABLE visits ( id INTEGER PRIMARY KEY, page TEXT NOT NULL ); INSERT INTO visits (page) VALUES ('home'); INSERT INTO visits (page) VALUES ('home'); INSERT INTO visits (page) VALUES ('help');

Выведите число строк в visits через COUNT(*).

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

CREATE TABLE scores ( id INTEGER PRIMARY KEY, player TEXT NOT NULL, points INTEGER NOT NULL ); INSERT INTO scores (player, points) VALUES ('ann', 8); INSERT INTO scores (player, points) VALUES ('bob', 15); INSERT INTO scores (player, points) VALUES ('kim', 11);

Выведите наибольшее значение points.

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

CREATE TABLE tasks ( id INTEGER PRIMARY KEY, title TEXT NOT NULL, done INTEGER NOT NULL ); INSERT INTO tasks (title, done) VALUES ('read', 1); INSERT INTO tasks (title, done) VALUES ('write', 0); INSERT INTO tasks (title, done) VALUES ('test', 0);

Выведите title только для строк, где done равно 0.

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

CREATE TABLE cities ( id INTEGER PRIMARY KEY, name TEXT NOT NULL, pop INTEGER NOT NULL ); INSERT INTO cities (name, pop) VALUES ('oslo', 700000); INSERT INTO cities (name, pop) VALUES ('bergen', 280000); INSERT INTO cities (name, pop) VALUES ('trondheim', 210000);

Выведите имена городов по убыванию pop.

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

CREATE TABLE logs ( id INTEGER PRIMARY KEY, msg TEXT NOT NULL, level INTEGER NOT NULL ); INSERT INTO logs (msg, level) VALUES ('start', 1); INSERT INTO logs (msg, level) VALUES ('warn', 2); INSERT INTO logs (msg, level) VALUES ('stop', 1); INSERT INTO logs (msg, level) VALUES ('info', 1);

Выведите msg для двух первых строк при сортировке по id по возрастанию.

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

CREATE TABLE notes ( id INTEGER PRIMARY KEY, body TEXT ); INSERT INTO notes (body) VALUES ('alpha'); INSERT INTO notes (body) VALUES (NULL); INSERT INTO notes (body) VALUES ('beta');

Пройдите все строки, прочитайте body в sql.NullString и для пустого поля выведите "empty", иначе текст.

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

CREATE TABLE sales ( id INTEGER PRIMARY KEY, region TEXT NOT NULL, units INTEGER NOT NULL ); INSERT INTO sales (region, units) VALUES ('north', 3); INSERT INTO sales (region, units) VALUES ('north', 2); INSERT INTO sales (region, units) VALUES ('south', 5);

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

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