使用C#从访问数据库中检索两个特定日期之间的数据

时间:2015-01-23 09:42:10

标签: c# sql

我在C#中寻找访问数据库的特定查询,以获取两个日期之间的数据,但数据库中没有开始日期和结束日期。

这是我的代码:

sql = "Select Working_Date From Attendance
   where Format(Working_Date,'Short date') BETWEEN#" 
   + dateTimePicker2.Value.Date 
   + "#AND#" 
   + dateTimePicker1.Value.Date + "#";

2 个答案:

答案 0 :(得分:0)

感谢您快速回复,

  1. 我有一个访问数据库, Working_Date 字段,其数据类型日期/时间用于员工的每日出勤。
  2. 我希望在两个特定日期之间看到员工的存在(每月周期 - 例如2015年1月25日至2015年2月25日)
  3. 当我执行第一个月的以下查询(2015年1月1日和2015年1月30日)时,它会给出正确的结果,但是当我更改开始日期&截止日期为01/02/2015& 2015年2月28日,它显示包括Jan月的记录。
  4. sql ="从出勤地点选择[Working_Date],其中[Working_Date] BETWEEN#" + dateTimePicker1.Value.Date +" #AND#" + dateTimePicker2.Value.Date +" #&#34 ;;

    1. 根据我的理解,格式化日期存在一些问题,但我仍然无法解决这个问题。

答案 1 :(得分:0)

谢谢大家,我得到了解决方案,格式化日期存在问题。

我在Ms access中使用了以下日期格式的查询。

sql = "Select User_Name,Shift,Format(Working_Date,'dd-MMM-yyyy') as
Working_Date,In_Time,Out_Time,Attendance,Working_Hrs,Department From Attendance
where [User_Name]=('" + Login_Frm.User_Name + "') AND [Department]=('" + 
Dpt_ID.Text + "') AND Working_Date BETWEEN#" + dateTimePicker1.Text + "#AND#" + 
dateTimePicker2.Text +"# ORDER BY [EMP_ID]";

感谢您的大力帮助