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%>
展开
 我来答
最美乡村行
2012-09-18 · TA获得超过1136个赞
知道大有可为答主
回答量:1191
采纳率:0%
帮助的人:1635万
展开全部
查询语句看不出来,问题,是不是和你的数据库没有对应啊,就是数据库ynpay字段的是否是不是不是文字啊!

另外“没有剔除ynpay='是' 这个条件”这句话是什么意思啊,现在的这个查询是三个条件的并集,难道你要的不是这个意思
追问
问题的关键就在这啦。结果可以分别得到ynpay  和ynclsoe的recordcount结果。做累加求和计算就会出错啦。
追答
你的查询语句就是你要的意思,你可以Q我这里说273047005我可以详细帮你分析一下
dbcnnet
2012-09-18 · TA获得超过204个赞
知道小有建树答主
回答量:575
采纳率:50%
帮助的人:425万
展开全部
ynpay=true and ynclose=false

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='否'"'
岂不是更简单,呵呵
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
feichang小雨
2012-09-18 · TA获得超过154个赞
知道小有建树答主
回答量:418
采纳率:50%
帮助的人:278万
展开全部
你看一下数据库中的ynpay这个字段定义类型是什么,值又是什么,是不是被定义成了true/false这种形式了。
追问
没有都是定义为文字类的。是通过表单提交的是与否
追答
听楼下的,看看数据库吧,象这种SQL语句没错但就是找不出问题的错误,有时候的确让人恼火。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式