请问这样的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代码和程序放到一起,乱混混的... 
 也可能是我写三层写习惯了.