use leetest
select right(convert(char(8),KPDate,112),8)>2007-04-01 from tblXskpMain
go
系统提示:
服务器: 消息 170,级别 15,状态 1,行 2
第 2 行: '>' 附近有语法错误。
如果去掉)>2007-04-01 就会列出所有的这个字段的值
加上就不行了~~`
哦,谢谢,我再试一下了`~`
那如何判断日期在2007-04-01至2007-04-30之间呢?
下面的文章对你应该有用:
谈谈有关SELECT语句在访问不同数据库方面的一些差别。
在SQL Server、Access、VFP三个数据库中分别有以下的这样一个表名都为“Employee”的数据表。如图1所示。
图1
访问日期型字段的差别
在大多数情况下用SELECT语句分别去访问这三个数据库的这张表,没有什么区别,即你若编写了访问SQL Server数据库的SELECT语句,同样可用于访问Access数据库或VFP数据库,只要将连接的数据源改一改即可。但你若要对“出生年月”这一日期型字段进行查询的话,问题就来了,例如要查询1980年1月1日至1985年12月31日的员工资料,访问SQL Server中的数据表的语句是:
Select * from employee where 出生年月 between '1980-01-01' and '1985-12-31'
如果想当然地用这条语句去访问Access数据库那就大错特错了,必须加上函数DateValue(),正确的写法如下:
Select * from employee where 出生年月between DateValue('1980-01-01')and DateValue('1985-12-31')
如果要访问VFP日期型字段又必须采用以下这种写法:
select * from employee where 出生年月 between {^1980-01-01} and {^1985-12-31}
以上是SELECT语句对于访问不同数据库的日期型字段的差别,不了解这种差别,你会被搞得晕头转向,不知错在哪里。
[此贴子已经被作者于2007-6-1 0:09:50编辑过]