可直接写为:select * from t where datepart(yy,time) between 2011 and 2012
如果是2011-01-01 --> 2011-12-31
可直接写为:select * from t where datepart(yy,time) = 2011
------解决方案--------------------
------解决方案--------------------
------解决方案-------------------- 字符串要加单引号啊,如果是数字,可以不加单引号,加了也不影响,数据库会隐式转换为int型,但是字符串不加引号,隐式转换不过去,会报错。 你的第二句或许不会报错,但是查询结果不对 放到数据库里执行起来就是select * frow t where time>2009=(2011-1-1)
------解决方案-------------------- 通过以上几楼看来,lz必须还得多加强点sql学习,在mssql中,dd不就是day的简写?yy不就是year的简写?等等
------解决方案-------------------- from 怎么楼上都写成了frow?