asp 使用SQL多条件查询数据库,查询结果出错?
sql="select*fromchargewherestaff_id='"&staff_id&"'andynpay='是'andynclose='否'"对查询结果进行累...
sql="select * from charge where staff_id='"&staff_id&"' and ynpay='是' and ynclose='否' "
对查询结果进行累加求和时,没有剔除ynpay='是' 这个条件,而是全部对ynclose='否' 的结果进行了累加计算。
<%
sql="select * from charge where staff_id='"&staff_id&"' and ynpay='否'"' "
rs.open sql,conn,1,1
%>
未回收
<%=rs.recordcount%>笔
<%
do while not rs.eof
num=num+rs("je")
rs.movenext
loop
rs.close
%>
合计 <%=num%元
<%
sql="select * from charge where staff_id='"&staff_id&"' and ynpay='是' and ynclose='否' "
rs.open sql,conn,1,1
%>
未结算 <%=rs.recordcount%>笔
<%
do while not rs.eof
num=num+rs("je")
rs.movenext
loop
rs.close
%>
合计:<%=num%> 展开
对查询结果进行累加求和时,没有剔除ynpay='是' 这个条件,而是全部对ynclose='否' 的结果进行了累加计算。
<%
sql="select * from charge where staff_id='"&staff_id&"' and ynpay='否'"' "
rs.open sql,conn,1,1
%>
未回收
<%=rs.recordcount%>笔
<%
do while not rs.eof
num=num+rs("je")
rs.movenext
loop
rs.close
%>
合计 <%=num%元
<%
sql="select * from charge where staff_id='"&staff_id&"' and ynpay='是' and ynclose='否' "
rs.open sql,conn,1,1
%>
未结算 <%=rs.recordcount%>笔
<%
do while not rs.eof
num=num+rs("je")
rs.movenext
loop
rs.close
%>
合计:<%=num%> 展开
3个回答
展开全部
查询语句看不出来,问题,是不是和你的数据库没有对应啊,就是数据库ynpay字段的是否是不是不是文字啊!
另外“没有剔除ynpay='是' 这个条件”这句话是什么意思啊,现在的这个查询是三个条件的并集,难道你要的不是这个意思
另外“没有剔除ynpay='是' 这个条件”这句话是什么意思啊,现在的这个查询是三个条件的并集,难道你要的不是这个意思
追问
问题的关键就在这啦。结果可以分别得到ynpay 和ynclsoe的recordcount结果。做累加求和计算就会出错啦。
追答
你的查询语句就是你要的意思,你可以Q我这里说273047005我可以详细帮你分析一下
展开全部
ynpay=true and ynclose=false
ACCess里的是/否 类型,不能用=是 或=否来查询
ACCess里的是/否 类型,不能用=是 或=否来查询
更多追问追答
追问
该两字段都是设置为文字类的。是通过前台表单提交的“是”与“否”
追答
SQL语句无问题,正是你需要的
至于为什么未查询到,你只能到库里看看了
看出来了,你底下的num把上面的nun也累加进去了,请更换一个变量num2或在累加前重置为0
像你这个用
select count(je) as total_record,sum(je) as total_je from charge where staff_id='"&staff_id&"' and ynpay='否'"'
岂不是更简单,呵呵
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你看一下数据库中的ynpay这个字段定义类型是什么,值又是什么,是不是被定义成了true/false这种形式了。
追问
没有都是定义为文字类的。是通过表单提交的是与否
追答
听楼下的,看看数据库吧,象这种SQL语句没错但就是找不出问题的错误,有时候的确让人恼火。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询