在sqlite中按日期时间列获得分组的月份和年份的计数

时间:2018-08-07 07:52:52

标签: c# sqlite

我正在使用xamarin形式。我在SQLite group by的datetime字段上遇到一些问题。 我正在使用的下表:

public class DataTable
{
    [PrimaryKey, AutoIncrement]
    public int ID { get; set; }
    public int WorkOrderId { get; set; }
    public Nullable<DateTime> TargetDateTime { get; set; }
}

我正在获取上表的数据,如下所示:

ID  WorkOrderId     TargetDateTime 
1   835     2018-08-16 00:00:00.000
2   836     2018-08-27 00:00:00.000
3   837     2018-09-18 00:00:00.000
4   838     2018-09-29 00:00:00.000
5   839     2018-10-15 00:00:00.000
6   840     2018-11-19 00:00:00.000

我想按此表按TargetDateTime列的月份和年份分组,如下所示:

MonthYear   count
07-2018     2
08-2018     2
09-2018     1
10-2018     1

出于查看目的,我在以下使用此表:

public class DataTableSummary
    {
        public string YearMonth { get; set; }
        public string MonthYear { get; set; }
        public int RecordCount { get; set; }

    }

var com = conn.Query<DataTableSummary>("SELECT strftime('%m-%Y',TargetDateTime) as YearMonth,count(*) as RecordCount FROM DataTable group by strftime('%m-%Y',TargetDateTime)");

但是它不起作用。谁能帮我解决这个问题。

0 个答案:

没有答案