我知道BETWEEN的功能是查找满足xx和yy之间的所有记录。
但我要查找的字段indate是个“日期时间”类型的,如“03-5-11 9:01:03”
可是我只写前面的日期查找不到结果,加上后面时间呢,又有错误,  请看 下面:
"Delete From userlist Where indate BETWEEN 03-01-01 00:00:00 AND 03-05-11 00:00:00"
(这样会提示:语法错误 操作符丢失)

"Delete From userlist Where indate BETWEEN 03-01-01 AND 03-05-11 "
(这样没有错误,但没有查找到任何记录)请高手帮我解决一下。谢谢!

解决方案 »

  1.   

    Delete From userlist Where indate BETWEEN convert(datetime,'03.01.01',102) AND convert(datetime,'03-05-11',102)
      

  2.   

    写错了:Sorry!
    Delete From userlist Where indate BETWEEN convert(datetime,'03.01.01',102) AND convert(datetime,'03.05.11',102)
      

  3.   

    这样行吗?我是在VB程序里写SQL语句的!
      

  4.   

    convert(datetime,'03.05.11',102)后面的“102”是什么意思呀
      

  5.   

    我回去试了一下,有错误,convert函数未定义
      

  6.   

    "Delete From userlist Where indate BETWEEN '03-01-01 00:00:00' AND '03-05-11 00:00:00'"
    或Where indate >'03-01-01 00:00:00' and indate <'03-05-11 00:00:00'"
      

  7.   

    Delete From userlist Where indate BETWEEN #03-01-01 00:00:00# AND #03-05-11 00:00:00"#convert函数是在sqlserver中的用法
      

  8.   

    在sql server中与access中还有oracle中日期的写法都不同。
    access中日期两边加#
    sql server 中就用convert
    oracle要用to_char
      

  9.   

    Delete From userlist Where indate BETWEEN #03-01-01 00:00:00# AND #03-05-11 00:00:00"#
    convert函数:CONVERT (data_type[(length)], expression [, style])102代表的是输出的格式!yymmdd格式的!
      

  10.   

    如果用的是MDB数据库我的写法是 
    Delete From userlist Where indate BETWEEN cdate('03-01-01 00:00:00') AND cdate('03-05-11 00:00:00')