我有一个事务表,其start_date和end_date是datetime数据类型。
我从vb.net应用程序传递日期。我在vb.net应用程序中编写了以下代码,生成的查询是不可预期的:
String.Format("SELECT * FROM {0}{1} WHERE {0}tran_date >= '{2}' and {0}tran_date <= '{3}' ;", _Pre, _Table, DateFrom.Date, DateTo.Date)
此处DateFrom和DateTo都是日期变量。
它产生的输出如下:
SELECT * FROM rm07transaction
WHERE
rm07tran_date >= '03/16/2011 12:00:00 AM' and
rm07tran_date <= '03/16/2011 12:00:00 AM'
当我查询查找03/16/2011的数据时,他们没有填充
答案 0 :(得分:0)
在您的示例中,您正在搜索“rm07tran_date”完全设置为“03/16/2011 12:00:00 AM”的行。你想要的是使用“开始日期”列和“结束日期列”。 EG:
SELECT * FROM rm07transaction
WHERE
rm07tran_StartDate >= '03/16/2011 00:00:00 AM' and
rm07tran_EndDate < '03/17/2011 00:00:00 AM'