Итоговый итог сетки Yii2 для каждой строки SqlDataProvider
У меня есть gridview
с атрибутом amount
, Я хотел бы сделать промежуточный итог (или промежуточный итог / сведение) amount
для каждого ряда. Например:
amount rollup
1. 2 2
2. 3 5
3. 2 7
4. 1 8
Есть ли способ сделать это? Можете ли вы указать мне правильное направление? Я понятия не имею, как это сделать, и я не нахожу никакой соответствующей информации, извините.
Зики: мой $dataProvider
является SqlDataProvider
поэтому я не могу использовать это решение. Можете ли вы помочь мне немного узнать, как я могу настроить его на SqlDataProvider
?
Я имею в виду такие значения, как $data["amount"]
, Кажется, у меня нет key
или же index
, может ли так быть? Я собираюсь:
Неопределенное смещение: 0 (или 1 или...)
Было бы хорошо также, если бы было решение SQL
ОБНОВЛЕНИЕ: я нашел простое решение SQL для этого:
sum(amount) over (order by ... rows unbounded preceding)
Самая важная деталь здесь: rows unbounded preceding
Если вы хотите получить такую сумму ( сдвиньте одну строку ниже):
amount rollup
1. 2
2. 3 2
3. 2 5
4. 1 7
может быть сделано с window function
:
sum(amount) over (order by ... ROWS BETWEEN UNBOUNDED PRECEDING AND 1 PRECEDING)
Кредиты @Hart CO
0 ответов
Я нашел простое решение SQL для этого:
sum(amount) over (order by ... rows unbounded preceding)
Самая важная деталь здесь: rows unbounded preceding
Если вы хотите получить такую сумму ( сдвиньте одну строку ниже):
amount rollup
1. 2
2. 3 2
3. 2 5
4. 1 7
может быть сделано с window function
:
sum(amount) over (order by ... ROWS BETWEEN UNBOUNDED PRECEDING AND 1 PRECEDING)
Кредиты @Hart CO