loading..
Русский    English
13:10
листать

Упражнение 3 (рейтинговый этап)

Для таблицы Product получить результирующий набор в виде таблицы со столбцами maker, pc, laptop и printer, в которой для каждого производителя требуется указать, производит он (yes) или нет (no) соответствующий тип продукции. В первом случае (yes) указать в скобках без пробела количество имеющихся в наличии (т.е. находящихся в таблицах PC, Laptop и Printer) различных по номерам моделей соответствующего типа.

 Если производитель выпускает модели некоторого типа, но ни одной из них нет в наличии, то, согласно формулировке, результат должен быть

yes(0)
а не

no

Многие находят «ошибку» в тестовом решении. Претензии сводятся к следующему запросу:

Консоль
Выполнить
  1. SELECT COUNT(*)
  2.    FROM Product
  3.    WHERE Maker = 'E' AND type='PC';
который дает 3 модели ПК для производителя Е, в то время как «правильный ответ» дает только одну модель компьютера для этого производителя. Вернемся к формулировке, в которой сказано:

«…указать в скобках без пробела количество имеющихся в наличии (т.е. находящихся в таблицах PC, Laptop и Printer) различных по номерам моделей соответствующего типа…»

Это в нашем случае означает, что в скобках требуется указать число различных моделей ПК производителя Е в таблице PC. На языке  Язык структурированных запросов) — универсальный компьютерный язык, применяемый для создания, модификации и управления данными в реляционных базах данных. SQL это можно записать так:

Консоль
Выполнить
  1. SELECT COUNT(DISTINCT pc.model)
  2.    FROM Product pr
  3.    JOIN PC ON pr.model=pc.model
  4.    WHERE Maker = 'E';
т.е.

1

Решить задачу на SQL-EX.RU

Bookmark and Share
Тэги:
ALL AND AUTO_INCREMENT AVG battles CASE CAST CHAR CHARINDEX CHECK classes COALESCE CONSTRAINT Convert COUNT CROSS APPLY CTE DATEADD DATEDIFF DATENAME DATEPART DATETIME DDL DEFAULT DELETE DISTINCT DML EXCEPT EXISTS EXTRACT FOREIGN KEY FROM FULL JOIN GROUP BY Guadalcanal HAVING IDENTITY IN INNER JOIN insert INTERSECT IS NOT NULL ISNULL laptop LEFT LEFT OUTER JOIN LEN maker MAX MIN Больше тэгов
Учебник обновлялся
сегодня
©SQL-EX,2008 [Развитие] [Связь] [О проекте] [Ссылки] [Team]
Перепечатка материалов сайта возможна только с разрешения автора.
Rambler's Top100