日期:2014-05-18  浏览次数:20401 次

请问这样的sql语句应该怎么样写
我想查询根据用户选择查询一段时间内的数据.(可以选择当天,一星期内,一个月内,和所有数据),但我的sql语句这样写却总是查询不出来,请问应该怎么样写才正确.我把代码贴出来

Function   returnmydate()   As   DateTime
  Dim   mydate   As   DateTime
  If   rd_day.Checked   =   True   Then   mydate   =   System.DateTime.Now.AddDays(-1)
  If   rd_week.Checked   =   True   Then   mydate   =   System.DateTime.Now.AddDays(-8)
  If   Rd_month.Checked   =   True   Then   mydate   =   System.DateTime.Now.AddDays(-31)
If   Rd_all.Checked   =   True   Then   mydate   =   System.DateTime.Now.AddDays(-60000)
  Return   mydate
    End   Function

viewstate( "mysql ")   =   "select   *   from   fadj   where   lasj> ' "   +   returnmydate()   +   " ' "         谁能告诉我这错在那里啊,谢了

------解决方案--------------------
用datediff吧
------解决方案--------------------
没有看出语句有什么错误.报什么错误呢?
------解决方案--------------------
用datepart
------解决方案--------------------
viewstate( "mysql ") = "select * from fadj where lasj> ' " + returnmydate().ToShortDateString() + " ' "
------解决方案--------------------
viewstate( "mysql ") = "select * from fadj where convert(char(10), lasj, 120)> convert(char(10), ' " + returnmydate() + " ', 120) "
------解决方案--------------------
使用存储过程吧,是一种好习惯.将SQL代码和程序放到一起,乱混混的...
也可能是我写三层写习惯了.