|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
13.04.2016, 23:17 | #1 |
Регистрация: 11.05.2015
Сообщений: 5
|
Задача по SQL
Краткая информация о базе данных "Компьютерная фирма":
Схема БД состоит из четырех таблиц: Product(maker, model, type) PC(code, model, speed, ram, hd, cd, price) Laptop(code, model, speed, ram, hd, price, screen) 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. Для каждой группы блокнотов с одинаковым номером модели добавить запись в таблицу PC со следующими характеристиками: код: минимальный код блокнота в группе +20; модель: номер модели блокнота +1000; скорость: максимальная скорость блокнота в группе; ram: максимальный объем ram блокнота в группе *2; hd: максимальный объем hd блокнота в группе *2; cd: cd c максимальной скоростью среди всех ПК; цена: максимальная цена блокнота в группе, уменьшенная в 1,5 раза Я написала следующее: Код:
Последний раз редактировалось Alex11223; 13.04.2016 в 23:21. |
14.04.2016, 08:00 | #2 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Не проходит - это как?
Новый code - будет ли уникальным в pc? Тип price конечно не известен? Может так прокатит: max(price)*2/3
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
14.04.2016, 11:16 | #3 |
Регистрация: 11.05.2015
Сообщений: 5
|
не проходит это значит выдается вот такое сообщение:
Неверно. Ваш запрос вернул правильные данные на основной базе, но не прошел тест на проверочной базе. * Несовпадение данных (9) цену попыталась вот так посчитать max(price)*2/3, но в итоге у двух записей в таблице вывелся неправильный результат |
14.04.2016, 12:20 | #4 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Тип price нужно смотреть. От этого зависит как уменьшить в 1.5 раза и как округлить результат
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
14.04.2016, 12:26 | #5 |
Регистрация: 11.05.2015
Сообщений: 5
|
price типа money
|
14.04.2016, 12:45 | #6 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Попробуй так ROUND(max(price)/1.5,2)
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
14.04.2016, 13:11 | #7 |
Регистрация: 11.05.2015
Сообщений: 5
|
Если использовать ROUND(max(price)/1.5,2) то как видно из рисунка два значения считаются не верно
Если же поменять на ROUND(max(price)/1.5,4 то опять возвращаемся к тому, что данные считаются верно но по проверочной базе запрос не проходит |
14.04.2016, 13:56 | #8 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Тоды не знаю. Это какой сайт и номер задания? Может вечерком гляну
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
14.04.2016, 14:02 | #9 |
Регистрация: 11.05.2015
Сообщений: 5
|
Сайт http://sql-ex.ru/ а задание 11 в разделе DML
|
14.04.2016, 19:40 | #10 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Там строковые типы нужно учесть при преобразованиях
Код:
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
задача по sql | ts-alan | SQL, базы данных | 5 | 03.04.2016 13:18 |
Задача на PL/SQl | ShaoKahn | SQL, базы данных | 0 | 05.12.2014 10:26 |
задача по SQL | Mcduff | Помощь студентам | 2 | 29.05.2014 11:06 |
Задача на sql | oleg2012g | SQL, базы данных | 3 | 22.05.2013 10:42 |
Задача по SQL | Соул | Помощь студентам | 1 | 08.10.2011 20:43 |