loading..
Русский    English
15:04
листать

Упражнение 55 (подсказки и решения)

Здесь мы приводим решение, которое верно (хотя и излишне) учитывает корабли из таблицы Outcomes.

Консоль
Выполнить
  1. SELECT t1.class, MIN(b.launched)
  2. FROM (SELECT name, class
  3.       FROM Ships
  4.       UNION
  5.       SELECT ship, class
  6.       FROM Outcomes JOIN
  7.            Classes ON ship = class AND
  8.                       ship NOT IN(SELECT name
  9.                                   FROM Ships
  10.                                   )
  11.       ) t1 LEFT JOIN
  12.       Ships b ON t1.class = b.class
  13. GROUP BY t1.class;

Единственная ошибка этого решения заключается в том, что не учтена ситуация, когда имеется класс, для которого нет кораблей в текущем состоянии базы данных. Заметим, что это допускается схемой, имеющей связь «один-ко-многим» между таблицами Classes и Ships.

Вернуться к обсуждению упражнения 55

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


Тэги:
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 INFORMATION_SCHEMA INNER JOIN insert INTERSECT IS NOT NULL IS NULL ISNULL laptop LEFT LEFT OUTER JOIN LEN maker Больше тэгов
Учебник обновлялся
несколько дней назад
https://exchangesumo.com/obmen/WAVES-BTC/ . Основные способы укрепления кустов помидоров
©SQL-EX,2008 [Развитие] [Связь] [О проекте] [Ссылки] [Team]
Перепечатка материалов сайта возможна только с разрешения автора.