Табличка
-------------------------
id | packing_id | value
1 | 50 | 1000
2 | 50 | 500
3 | 60 | 500
4 | 33 | 100
Я хочу выбрать packing_id c максимальными значениями поля value используя агрегацию
у меня это не получается потому что orm вставляет группировку по полю id, типа она в select есть потому что. Но у меня там еще куча полей и мне не нужно по этим полям группировать ! Как мне решить мою проблему ?
на сколько я понял из этого не как ?
Важное правило: Если в выборке есть агрегация или группировка (агрегация по уникальному значению) хотя бы для одной колонки, то все остальные колонки из SELECT и ORDER BY должны быть так же агрегированы или сгруппированы.
-------------------------
id | packing_id | value
1 | 50 | 1000
2 | 50 | 500
3 | 60 | 500
4 | 33 | 100
Я хочу выбрать packing_id c максимальными значениями поля value используя агрегацию
| Код |
|---|
$rs = Price\ValuesTable::getList([
'filter' => [
'packing_id' => [50, 60]
],
'select' => array(
'id',
new Entity\ExpressionField('val', 'MAX(%s)', array('value'))
)
]);
|
у меня это не получается потому что orm вставляет группировку по полю id, типа она в select есть потому что. Но у меня там еще куча полей и мне не нужно по этим полям группировать ! Как мне решить мою проблему ?
на сколько я понял из этого не как ?
Важное правило: Если в выборке есть агрегация или группировка (агрегация по уникальному значению) хотя бы для одной колонки, то все остальные колонки из SELECT и ORDER BY должны быть так же агрегированы или сгруппированы.
