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

Смешанные задачи по SQLite в Dart

Здесь встречаются групповая сводка, чтение пустого поля и связь нескольких таблиц в одном запросе.

В cafe.db таблица заказов задана фрагментом:

import 'package:sqlite3/sqlite3.dart'; final db = sqlite3.open('cafe.db'); db.execute(''' CREATE TABLE drink_order ( id INTEGER PRIMARY KEY, item TEXT NOT NULL, qty INTEGER NOT NULL, room TEXT NOT NULL ); INSERT INTO drink_order (item, qty, room) VALUES ('tea', 2, 'A'), ('coffee', 1, 'A'), ('tea', 3, 'B'), ('juice', 1, 'B'); '''); db.dispose();

Посчитайте сумму qty для каждого room и выведите комнату и сумму.

Журнал доставок в cafe.db:

import 'package:sqlite3/sqlite3.dart'; final db = sqlite3.open('cafe.db'); db.execute(''' CREATE TABLE delivery ( id INTEGER PRIMARY KEY, courier TEXT NOT NULL, note TEXT ); INSERT INTO delivery (courier, note) VALUES ('Mia', 'left at desk'), ('Owen', NULL), ('Pia', 'call first'); '''); db.dispose();

Выведите имя курьера и заметку. Если заметки нет, печатайте "none".

Курсы и слушатели связаны через таблицу записей:

import 'package:sqlite3/sqlite3.dart'; final db = sqlite3.open('cafe.db'); db.execute(''' CREATE TABLE course ( id INTEGER PRIMARY KEY, title TEXT NOT NULL ); CREATE TABLE learner ( id INTEGER PRIMARY KEY, name TEXT NOT NULL ); CREATE TABLE enrollment ( learner_id INTEGER NOT NULL, course_id INTEGER NOT NULL, FOREIGN KEY (learner_id) REFERENCES learner(id), FOREIGN KEY (course_id) REFERENCES course(id) ); INSERT INTO course (title) VALUES ('Kotlin'), ('SQL'); INSERT INTO learner (name) VALUES ('Eva'), ('Finn'), ('Gus'); INSERT INTO enrollment (learner_id, course_id) VALUES (1, 1), (2, 1), (2, 2), (3, 2); '''); db.dispose();

Выведите название курса и имя каждого записанного слушателя в виде "Kotlin: Eva", отсортировав по курсу, затем по имени.

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