Datatable Select query日期范围问题

本文关键字:范围 问题 日期 query Select Datatable | 更新日期: 2023-09-27 18:10:30

我有一个数据表,其中我使用选择查询按日期范围选择值,但它返回0计数。我做错了什么?

下面是我的代码:
string sUserName = "joe";
string Value = "4";
string sProcessStart = "2015-08-28 12:12:26 PM";
string sProcessEnd = "2015-08-28 12:29:26 PM";
DataTable dtDLCD = new DataTable();
DataColumn dtcolumn = new DataColumn("UserName");
dtcolumn.DefaultValue = "joe";
dtDLCD.Columns.Add(dtcolumn);
DataColumn dtcolumn1 = new DataColumn("Value");
dtcolumn1.DefaultValue = "4";
dtDLCD.Columns.Add(dtcolumn1);
DataColumn dtcolumn3 = new DataColumn("StartDate");
dtcolumn3.DefaultValue = "2015-08-28 12:20:26 PM";
dtDLCD.Columns.Add(dtcolumn3);
DataColumn dtcolumn4 = new DataColumn("EndDate");
dtcolumn4.DefaultValue = "2015-08-28 12:29:26 PM";
dtDLCD.Columns.Add(dtcolumn4);
DataRow drow = dtDLCD.NewRow();
dtDLCD.Rows.Add(drow);

DataRow[] drDocDetails = dtDLCD.Select("UserName = '" + sUserName +
                                   "' AND Value = '" + Value +
                                   "' AND StartDate >= '" + Convert.ToDateTime(sProcessStart).ToString("yyyy-MM-dd hh:mm:ss tt") +
                                   "' AND EndDate <= '" + Convert.ToDateTime(sProcessEnd).ToString("yyyy-MM-dd hh:mm:ss tt") + "'");
int count = drDocDetails.Count();

Datatable Select query日期范围问题

您在此代码示例中所做的是定义表本身:您没有添加任何数据行。(在数据库表中,"字段"answers"列"几乎是同义词。)

在代码段的末尾,您创建了一个行对象的实例——但是您没有为每个列定义任何值。您调用了Add()方法——但是行中没有要添加的内容。

添加数据(每条记录一行),那么您的记录计数将不为零。