在SQLite中按月分组

Hiy*_*sat 11 c# sql sqlite group-by

我有一个包含事务的SQLite数据库,每个事务都有价格transDate.

我想检索按月分组的事务总和.检索到的记录应如下所示:

Price    month
230        2
500        3
400        4
Run Code Online (Sandbox Code Playgroud)

Sal*_*lil 24

当你按月分组时,它总是很好,它也应该检查YEAR

select SUM(transaction) as Price, 
       DATE_FORMAT(transDate, "%m-%Y") as 'month-year' 
       from transaction group by DATE_FORMAT(transDate, "%m-%Y");
Run Code Online (Sandbox Code Playgroud)

FOR SQLITE

select SUM(transaction) as Price, 
       strftime("%m-%Y", transDate) as 'month-year' 
       from transaction group by strftime("%m-%Y", transDate);
Run Code Online (Sandbox Code Playgroud)

  • 如果你使用的是 android 可能这会很有帮助 strftime('%m-%Y', transDate, 'unixepoch') (2认同)

And*_*mar 6

您可以在月初分组:

select  date(DateColumn, 'start of month')
,       sum(TransactionValueColumn)
from    YourTable
group by 
        date(DateColumn, 'start of month')
Run Code Online (Sandbox Code Playgroud)