javascript时间先后的比较
数据库 SQLSERVER
表 tab_rate
字段 updatetime
类型 smalldatetime
默认值 getDate()
<div id=cc> </div>
<script>
var money_array=new Array()
var kind_array=new Array()
var term_array=new Array()
var rate_array=new Array()
var updatetime_array=new Array()
<%
num=0
sqlstr="select money, kind, term, rate, substring(convert(char,updatetime,120),1,10) AS updatetime FROM TAB_RATE WHERE (type LIKE '%储蓄%利率%') GROUP BY money, kind, term, rate, updatetime ORDER BY money,kind,updatetime DESC, term"
set rs=dataconn.execute(sqlstr)
do while not rs.eof
%>
money_array[<%=num%>]=<%="'"&rs("money")&"'"%>
kind_array[<%=num%>]=<%="'"&rs("kind")&"'"%>
term_array[<%=num%>]=<%=rs("term")%>
rate_array[<%=num%>]=<%=rs("rate")%>
updatetime_array[<%=num%>]=<%="'"&rs("updatetime")&"'"%>
<%
num=num+1
rs.movenext
loop
rs.close:set rs=nothing
dataconn.close:set conn=nothing
%>
var str=" "
for(var i=0;i<money_array.length;i++)
str=str+money_array[i]+","+kind_array[i]+","+term_array[i]+","+rate_array[i]+","+updatetime_array[i]+"<br>"
cc.innerHTML=str
</script>
运行显示:(得到想要的结果)
港币,活期,0,0.004375,2002-02-01
港币,通知存款,7,0.008438,2000-01-01
港币,整存整取,1,0.0125,2002-08-01
港币,整存整取,3,0.0125,2002-08-01
港币,整存整取,6,0.01375,2002-08-01
港币,整存整取,12,0.014375,2002-08-01
港币,整存整取,24,0.015,2002-08-01
但是取利率结果失败:
/*****************取得小于date_value的利率**************************/
function getDBRate2(money_value,kind_value,term_value,date_value){
for(var i=0;i<money_array.length;i++){
var b1=money_array[i].indexOf(money_value)>=0
var b2=kind_array[i].indexOf(kind_value)>=0
var b3=term_array[i]==term_value
var b4=updatetime_array[i]<date_value
if(b1 && b2 && b3 && b4) return rate_array[i]
}
return 0;
}
alert(getDBRate2("英镑","活期",0,new Date("2002-02-12")))//总返回0
//数据库中是有满足小于2002-02-12条件的记录的
问题出在哪里,各位高手帮忙?