Я имею эту таблицу в MYSQL:MYSQL - применять где положение только некоторые поля
Year Type Value ID
0 0 5 1
2010 1 6 1
2011 1 4 1
2012 1 5 1
2013 1 7 1
2014 1 8 1
2015 1 5 1
0 0 6 2
2009 1 7 2
2010 1 4 2
2011 1 2 2
2012 1 8 2
2013 1 8 2
2014 1 5 2
Я хочу, чтобы выбрать минимальный и максимальный год для каждого человека (идентификаторами 1 и 2), но я также хочу для выбора значения, связанного с типом 0 для каждого человека. В идеале это то, что результат запроса будет выглядеть следующим образом:
ID MinYear MaxYear Type0Value
1 2010 2015 5
2 2009 2014 6
запрос должен выглядеть, я думаю, что-то вроде этого ...
select ID,
(min(year) where type = 1) as MinYear,
(max(year) where type = 1) as MaxYear,
(value where type = 0) as Type0Value
from table
group by ID
Но это, очевидно, не правильный синтаксис SQL. Как мне это сделать?
Что вы думаете об использовании self join? –
Ах, совсем забыл об этом! Спасибо – japem