C#如何查询access表中时间在当前时间前30天内的数据啊?

access的admin表中date字段是短日期型(2009-08-14),下拉菜单选择“一周内”,查询,查询结果是今天时间为准,前7天内发布的信息,请问C#代码和sql语句应该怎样写?
回xuyue3000
语法错误 (操作符丢失) 在查询表达式 '(2009-08-14 00:00:00-cnttb_TheTime > 30)'

回inforliu
表达式中 'getdate' 函数未定义。

在access里获取时间应该是now()
SELECT * FROM admin WHERE datediff('d',date,now())<=30

另外给你一个参考
//获得今天是本星期的第几天
int m=Convert.ToInt32(DateTime.Today.DayOfWeek);
//实现SQL语句的本周的记录
SQLtime=" between #"+DateTime.Today.AddDays(-m).ToShortDateString()+"# and #"+DateTime.Today.AddDays(7-m).ToShortDateString() +"#";

关于access和sql server在使用datediff函数方面的不同请参考

参考资料:http://hi.baidu.com/leetao7696/blog/item/040b2b6240b566d5e6113a37.html

温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-08-15
SELECT *
FROM admin
WHERE (NOW() -date < 30)
第2个回答  2009-08-14
SELECT *
FROM admin
WHERE datediff(day,date,getdate())<=30
第3个回答  2009-08-14
SELECT *
FROM admin
WHERE datediff(day,date,getdate())<=30 或
SELECT *
FROM admin
WHERE datediff(day,date,getdate())<=30
相似回答