Я использую Oracle 11G, и у меня есть таблица со следующими столбцами и значениями, и я хочу выбрать значение для каждого столбца на основе столбца приоритета. Я хочу только одну строку для каждого ID.Как выбрать строку на основе значения приоритета в другой строке?
ID NAME NAME_PRIORITY COLOR COLOR_PRIORITY
1 SAM 2 RED 1
1 SAM 2 GREEN 2
1 JOHN 1 BLUE 3
2 MARY 2 ORANGE 1
3 JON 2 RED 2
3 PETE 3 GREEN 1
Желательные Результаты
ID NAME NAME_PRIORITY COLOR COLOR_PRIORITY
1 JOHN 1 RED 1
2 MARY 2 ORANGE 1
3 JON 2 GREEN 1
Как я выбираю название и цвет с самым низким приоритетом # и только одну строку для каждого идентификатора.
+1 Это пятно, я не знал о 'keep'. Вот демонстрация - http://www.sqlfiddle.com/#!4/ab996/5 – Taryn
Спасибо, что я никогда не знал об этом! Я собирался попробовать что-то более сложное, как ответы ниже. Это намного проще, спасибо! – swingard