Ответ:

Используем SQLite. Для примера выберем автора Иванова; записи и цены условные. Тип TEXT подходит для фамилии, имени и названия, а NUMERIC — для цены.

  1. Создаём таблицу и добавляем пять записей:

    CREATE TABLE Catalog (Name_fam TEXT NOT NULL, Name_im TEXT NOT NULL, Name_book TEXT NOT NULL, Price NUMERIC NOT NULL CHECK (Price >= 0));

    INSERT INTO Catalog (Name_fam, Name_im, Name_book, Price) VALUES ('Иванов', 'Алексей', 'Северный ветер', 450), ('Иванов', 'Алексей', 'Дорога домой', 520), ('Петрова', 'Марина', 'Тихий берег', 600), ('Смирнов', 'Олег', 'Городской сад', 380), ('Кузнецова', 'Ирина', 'Синие окна', 710);

  2. Выбираем названия книг автора Иванова:

    SELECT Name_book FROM Catalog WHERE Name_fam = 'Иванов' AND Name_im = 'Алексей';

    Результат: «Северный ветер», «Дорога домой».

  3. Функции SUM, MAX и MIN вычисляют общую стоимость, наибольшую и наименьшую цены:

    SELECT SUM(Price) AS СуммарнаяСтоимость, MAX(Price) AS МаксимальнаяЦена, MIN(Price) AS МинимальнаяЦена FROM Catalog;

    Суммарная стоимость: 450 + 520 + 600 + 380 + 710 = 2660. Максимальная цена — 710, минимальная — 380.