Почему я не могу получить правильный ответ в этом руководстве по SQLzoo? - PullRequest
0 голосов
/ 11 января 2009

Задача 2b выглядит следующим образом:

2b. По каждому предмету покажите первый год, когда была присуждена премия.

нобель (год, предмет, победитель)

Мое решение было таким:
SELECT DISTINCT subject, yr<br /> FROM nobel<br /> ORDER BY yr ASC;

Почему это не работает?

Ответы [ 3 ]

2 голосов
/ 11 мая 2011

Вы можете сделать это по-другому, не используя group by или min

select distinct subject, yr from nobel x
  where yr <= all
    (select yr from nobel y
     where y.subject = x.subject)

но это определенно больше работы.

1 голос
/ 11 января 2009

Ваш ответ получает ряд для каждой отдельной комбинации предмета и года.

Правильный ответ ГРУППЫ ПО ТЕМЕ, и получает МИНУТ год за тему.

Достаточно ли подсказки?

0 голосов
/ 11 января 2009
SELECT subject, MIN(yr)
FROM nobel
GROUP BY subject;

Ура! * * 1002

...