Допустим, у меня есть данные, как это:SQL Group на один столбец и решить, какие колонки выбрать
| id | code | name | number |
-----------------------------------------------
| 1 | 20 | A | 10 |
| 2 | 20 | B | 20 |
| 3 | 10 | C | 30 |
| 4 | 10 | D | 80 |
Я хотел бы группу строк по code
стоимости, но получить реальные строки обратно (не какой-то агрегатной функции) ,
Я знаю, что только
select *
from table
group by code
не будет работать, потому что база данных не знаю, какая строка возвращать где код такой же.
Так что мой вопрос заключается в том, чтобы сказать, базу данных, чтобы выбрать (например) нижний столбец с номером, так и в моем случае
| id | code | name | number |
-----------------------------------------------
| 1 | 20 | A | 10 |
| 3 | 10 | C | 30 |
P.S.
Я знаю, как это сделать с помощью PARTITION, но это разрешено только в базах данных Oracle и не может быть создано в построителе критериев JPA (какова моя конечная цель).
@damien_the_unbeliever: Я не думаю, что это дубликат, потому что Марко должен сделать это в запутывания слое, а не в SQL. –
@damien_the_unbeliever Я думаю, это не дубликат. Вторая причина заключается в том, что в другом примере критерии относятся к столбцу id (первый id), в моем случае критерии относятся к столбцу номера. Я знаю, что это швы, как не много изменений, но если я хочу использовать решение join (select ...), мне нужно во втором выбрать, чтобы получить id без функции агрегации (в другом случае был min). –