Упражнение 54 (подсказки и решения)
Упражнение 54 (подсказки и решения)
Чтобы написать UNION в решении 3.10.2, недостаточно выполнять объединение по одному столбцу numGuns. Список столбцов должен быть таким, чтобы он однозначно определял корабль. Тогда действительно исключаться будут дубликаты, а не полезная информация.
Ниже представлено решение, которое использует этот прием, но содержит незначительную ошибку, поиск которой предоставляем читателям.
SELECT CAST(AVG(numguns*1.0) AS NUMERIC (6,2))
FROM (SELECT ship, type, numguns
FROM Outcomes RIGHT JOIN
Classes ON ship = class
UNION
SELECT name, type, numguns
FROM Ships s JOIN
Classes c ON c.class = s.class
) AS al_sh
WHERE type = 'bb';
mssql
🚫
[[ error ]]
[[ column ]] |
---|
[[ value ]] |