Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 41 задание sql - ex.ru  [new]
Michail A.
Member

Откуда:
Сообщений: 96
Всем привет!

Есть задание на sql-ex.ru (№41)

Схема БД состоит из четырех таблиц:
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 вывести все его характеристики (кроме кода) в два столбца:
- название характеристики (имя соответствующего столбца в таблице PC);
- значение характеристики


Задание подразумевает использование конструкции unpivot, поэтому решение строю через нее (хочу научиться ее использованию)

select chr,val from
(select 
 cast (model as varchar(50)) as model 
,cast(speed as varchar(50)) as speed
,cast(ram as varchar(50)) as ram
,cast(hd as varchar(50)) as hd
,cast(cd as varchar(50)) as cd
,cast(price as varchar(50)) as price 
from pc
where code = (select max(code) from pc)) as t
unpivot
(val
for chr in (model,speed,ram,hd,cd,price)) as upt


В ответ получаю, что

автор
Неверно.
Ваш запрос вернул правильные данные на основной базе, но не прошел тест на проверочной базе.
* Неверное число записей (меньше на 1)


Собственно, вопрос, что я делаю не так?
2 сен 18, 20:56    [21661914]     Ответить | Цитировать Сообщить модератору
 Re: 41 задание sql - ex.ru  [new]
iap
Member

Откуда: Москва
Сообщений: 46952
Michail A.,

сейчас вас забанят
2 сен 18, 20:57    [21661915]     Ответить | Цитировать Сообщить модератору
 Re: 41 задание sql - ex.ru  [new]
Michail A.
Member

Откуда:
Сообщений: 96
iap,

почему???
2 сен 18, 21:00    [21661921]     Ответить | Цитировать Сообщить модератору
 Re: 41 задание sql - ex.ru  [new]
iap
Member

Откуда: Москва
Сообщений: 46952
Michail A.
iap,

почему???
Потому что нельзя обсуждать задачи с sql-ex.ru.
Это надо делать у них на сайте.

Я-то что... Я ничего. Просто много я уже видел похожих ситуаций.
2 сен 18, 21:06    [21661931]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить