急,怎么写这个SQL啊
我的数据库表中有个CHECK_DATE字段 字符型 保存的是通过Cstr(date())转换的日期。
比如2005-05-20
现在我想获取所有月份为当月的数据。怎么办啊,我的代码是这样的,但不知道怎么去写他的条件。
-----------
check=Cstr(month(date()))---获取现在的月份并转换成字符型
sql="SELECT * FROM CheckInf WHERE PERSON_NAME='"&PERSON_NAME&"'"--想在这AND 那个条件
---连接数据库
set rs=server.createobject("ADODB.Recordset")
[318 byte] By [
msdn] at [2007-8-14 9:08:45]

# 1 Re: 急,怎么写这个SQL啊
看这样行不。
....and month(CDate(rs("CHECK_DATE")) == check
还有,对于你这种写法。check=Cstr(month(date()))---获取现在的月份并转换成字符型
我记得vbscript里只有一种类型。所以不管你右边怎么转换,左边都是variant. 转化只是在表达式里的计算才有价值。
# 2 Re: 急,怎么写这个SQL啊
哦 可是我是想在SQL里写啊 是不是不可以啊。
我的意思是要用SQL 抓出满足PERSON_NAME='"&PERSON_NAME&"'"和CHECK_DATE中的月份等于当前月份。
-------
你这是定义rs后的吗?and month(CDate(rs("CHECK_DATE")) == check
我的SQL是在定义RS之前啊 请问有什么好办法没?
# 3 Re: 急,怎么写这个SQL啊
你存放日期的字段数据类型是什么?我用的是smalldate类型,这样写就可以了
and month(adddate)=month(getdate())
其中adddate是字段名,month(getdate())是当月份,我自己写了段,能从数据库里拿记录,你试试!!
:)
# 5 Re: 急,怎么写这个SQL啊
我刚才在分析器里试了varchar型'2005-05-10',用month可以取它的月份,sql会自己动转换,所以你可以
sql="SELECT * FROM CheckInf WHERE PERSON_NAME='"&PERSON_NAME&"' and month(CHECK_DATE)='"&check&"'"
net205 at 2005-5-23 19:43:06 >
