Итак, я знаю, что это довольно глупый вопрос, однако (как говорит довольно длинный заголовок). Мне хотелось бы знать, как сделать следующее:
У меня есть таблица вроде этого:
ID Foo Bar Blagh
----------------
1 10 20 30
2 10 5 1
3 20 50 40
4 20 75 12
Я хочу сгруппировать Foo, затем вытащить строки с минимальным баром, то есть я хочу следующее:
ID Foo Bar Blagh
----------------
2 10 5 1
3 20 50 40
Я не могу на всю жизнь выработать правильный SQL, чтобы получить это. Мне нужно что-то вроде:
SELECT ID, Foo, Bar, Blagh
FROM Table
GROUP BY Foo
HAVING(MIN(Bar))
Однако это явно не работает, так как это полностью недействительно. ИМЕЕТ синтаксис и идентификатор, Foo, Bar и Blagh не агрегируются.
Что я делаю неправильно?