Product(maker, model, type)
PC(code, model, speed, ram, hd, cd, price)
Laptop(code, model, speed, ram, hd, screen, price)
Printer(code, model, color, type, price)
Таблица Product представляет производителя (maker), номер модели (model) и тип ('PC' - ПК, 'Laptop' - ПК-блокнот или 'Printer' - принтер). Предполагается, что номера моделей в таблице Product уникальны для всех производителей и типов продуктов. В таблице PC для каждого ПК, однозначно определяемого уникальным кодом – code, указаны модель – model (внешний ключ к таблице Product), скорость - speed (процессора в мегагерцах), объем памяти - ram (в мегабайтах), размер диска - hd (в гигабайтах), скорость считывающего устройства - cd (например, '4x') и цена - price. Таблица Laptop аналогична таблице РС за исключением того, что вместо скорости CD содержит размер экрана -screen (в дюймах). В таблице Printer для каждой модели принтера указывается, является ли он цветным - color ('y', если цветной), тип принтера - type (лазерный – 'Laser', струйный – 'Jet' или матричный – 'Matrix') и цена - price.
Найдите производителей самых дешевых цветных принтеров. Вывести: maker, price
Решить надо вот на этом сайтике
http://sql-ex.ru/learn_exercises.php?LN=18
Вроде совсем простенькая задачка. Но есть какой-то загадочный подвох
- Код: Выделить всё
SELECT maker, price
FROM printer
INNER JOIN product ON product.model = printer.model
WHERE printer.price IN
(SELECT min(price)
FROM printer
WHERE color = 'y'
)
and color='y'
Ответ на запрос:
- Код: Выделить всё
Неверно.
Ваш запрос вернул правильные данные на основной базе, но не прошел тест на проверочной базе.
* Неверное число записей (больше на 1)
На эту задачу есть FAQ
Результат выполнения Вашего запроса:
maker price
D 270.0000