帮忙解释一下:endcalltime between CONVERT(DATETIME, '"& beginday &"', 102) and "&_" CONVERT(DATETIME, '"& endday &"', 102)"
整个语句是:
SELECT isnull(sum(newfee),0) as totlenewfee, isnull(sum(newfee)/"& perfee &",0) as calltime FROM datedata where maincall like '"& callnum &"' and newfee>0 "&_
" and endcalltime between CONVERT(DATETIME, '"& beginday &"', 102) and "&_" CONVERT(DATETIME, '"& endday &"', 102)
问题点数:10、回复次数:6Top
1 楼ghaihua(晨昕)回复于 2005-08-01 10:40:00 得分 0
isnull(sum(newfee),0) as totlenewfee 如果sum(newfee)的值为NULL赋值为0取别名totlenewfee
isnull(sum(newfee)/"& perfee &",0) as calltime 同理
CONVERT(DATETIME, '"& endday &"', 102)是格式化时间,具体你再查查SQL帮助。
那些like,and,between就不必说了吧。
Top
2 楼ghaihua(晨昕)回复于 2005-08-01 10:45:06 得分 2
CONVERT(DATETIME, '"& endday &"', 102)格式为yy.mm.ddTop
3 楼GageCSDN(稻草人)回复于 2005-08-01 10:56:53 得分 8
endcalltime between CONVERT(DATETIME, '"& beginday &"', 102) and "&_" CONVERT(DATETIME, '"& endday &"', 102)
此为SQLL语句的查询条件部分
endcalltime 字段名
意思是:endcalltime字段值在变量beginday和变量endday所表达的时间范围内(包括这两个时间点)
因为SQL Server对数据类型要求比较严格,所以这里使用了CONVERT函数将beginday、endday由字符串型显式地转转换成日期型.Top
4 楼roseandwort(常春藤)回复于 2005-08-01 13:33:23 得分 0
ok,谢谢稻草人。那我在网上查到convert 只有两个参数,一个是类型,一个是字段名,可这段上还多了一个102是什么东东啊,就是这有点晕^_^Top
5 楼GageCSDN(稻草人)回复于 2005-08-01 15:06:35 得分 0
convert函数有第三个参数,这个参数是个可选的参数,用来指定处理日期型数据时用来指定日期的格式,这里的102表示日期字符串以'yy.mm.dd'的格式来表示.
Top
6 楼roseandwort(常春藤)回复于 2005-08-01 17:44:00 得分 0
噢,这样啊,谢谢。
你好象对这个时间方面比较精通,能不能帮我另外一个问题http://community.csdn.net/Expert/topic/4167/4167008.xml?temp=.3160669啊,这个问题一直没得到解答。Top




