SQL查询语句问题,请大家帮忙看一下
我现在有一个表如下user_feiyong(应收) weixiu_feiyong(实收) chuangshou(创收) paodanfei(单费) paidan_name(工程师) keping(客户评价)
[attach]35333[/attach]
如今我想用查询语句将其汇总
目前我已能汇总user_feiyong(应收) weixiu_feiyong(实收) chuangshou(创收) paodanfei(单费)也就是数字类型的汇总已完成,但不能统计客户评价这一栏数量,我要的结果是:
[attach]35334[/attach]
非常满意及比较满意(满意) 不满意 投诉 未联系上
80% 10% 1% 9%
<%
dim xingming,date1,date2
xingming=request("paidan_name")
IF request("baoxiu_date1")<>"" And request("baoxiu_date2")<>"" Then
date1=request("baoxiu_date1")
date2=request("baoxiu_date2")
End IF
IF request("date1")<>"" And request("date2")<>"" Then
date1=request("date1")
date2=request("date2")
End IF
sql="select paidan_name,count(bx_id) as danshu,sum(user_feiyong) as user_feiyong,sum((chuangshou))as chuangshou,sum(weixiu_feiyong) as weixiu_feiyong,sum(paodanfei) as paodanfei from baoxiu where baoxiu_date between #"&date1&"# and #"&DateAdd("d",1,date2)&"# group by paidan_name "
Set rs= Server.CreateObject("ADODB.Recordset")
rs.open sql,conn,1,1
%>
[[it] 本帖最后由 qinyun 于 2008-6-8 19:56 编辑 [/it]]
这个查询起来,比来费劲.
要用子查询. 显然是个投票系统嘛``你找个投票系统看看`! [quote][bo][un]放纵思想[/un] 在 2008-6-10 08:37 的发言:[/bo]
要用子查询. [/quote]
能不能说祥细点,子查询语句怎么写呢,能帮写一下吗 非常满意及比较满意(满意) 不满意 投诉 未联系上
80% 10% 1% 9%
这是什么意思?
我举个例子,这个工程师有一个非常满意,两个投诉,3个未联系上,最终的评价你怎么算出来?
PS: 最好把数据库精简一下传上来,有几组必要数据就行,不要太多,不然文件太大.直接拿数据库试比较方便 逻辑不是很清楚!!!!!!!!!!1111 你的问题不是很明确
我理解半天,写出下面代码,不晓得是不是你要的结果!
想法:用<%=rs.recordcount%>来计数
<%
set rs=Server.CreateObject("ADODB.RecordSet")
sql="select 客户评价 from [表名] WHERE 客户评价 like '非常满意'"
rs.open sql,conn,1,1
if rs.recordcount<>0 then
do while not rs.eof
%>
非常满意共有<%=rs.recordcount%>条
<%
rs.movenext
loop
end if
%>
<%
set rs=Server.CreateObject("ADODB.RecordSet")
sql="select 客户评价 from [表名] WHERE 客户评价 like '比较满意'"
rs.open sql,conn,1,1
if rs.recordcount<>0 then
do while not rs.eof
%>
比较满意共有<%=rs.recordcount%>条
<%
rs.movenext
loop
end if
%> [quote][bo][un]永夜的极光[/un] 在 2008-6-10 19:42 的发言:[/bo]
非常满意及比较满意(满意) 不满意 投诉 未联系上
80% 10% 1% 9%
这是什么意思?
我举个例子,这个工程师有一个非常满意,两个投诉,3个未联系上,最终的评价你怎么算出来 ... [/quote]
这里的算法是:非常满意及比较满意(满意)占(比如45条) 不满意占(比如10条) 总数(比如65条) 那么结果是:满意45条/总数65条 =69% 不满意10条/总数65条 =15%
单个工程师的百分比我能算的出来,但是不能放到下面的这个表中,因为下面表中的工程师数量是不固定的,现在我想要联合下面这句来联合查询,用一条语句完成这个统计
sql="select paidan_name,count(bx_id) as danshu,sum(user_feiyong) as user_feiyong,sum((chuangshou))as chuangshou,sum(weixiu_feiyong) as weixiu_feiyong,sum(paodanfei) as paodanfei from baoxiu where baoxiu_date between #"&date1&"# and #"&DateAdd("d",1,date2)&"# group by paidan_name "
[attach]35394[/attach]
最终达到的效果如下:
工程师 开始日期 终止日期 count(单数) count(一般) count(满意) count(投诉) count(未访) sum(应收费用) sum(实收费用) sum(创收费用) sum(服务单费)
[[it] 本帖最后由 qinyun 于 2008-6-11 14:16 编辑 [/it]]
[[it] 本帖最后由 qinyun 于 2008-6-11 14:18 编辑 [/it]]
回复 9# anjincheng 的帖子
anjincheng你的代码我只能单个的算出数量,不能联合下面语句查询,但我还是谢谢你的帮助,谢谢!sql="select paidan_name,count(bx_id) as danshu,sum(user_feiyong) as user_feiyong,sum((chuangshou))as chuangshou,sum(weixiu_feiyong) as weixiu_feiyong,sum(paodanfei) as paodanfei from baoxiu where baoxiu_date between #"&date1&"# and #"&DateAdd("d",1,date2)&"# group by paidan_name " 头又疼了,............. [quote][bo][un]qinyun[/un] 在 2008-6-11 14:04 的发言:[/bo]
anjincheng你的代码我只能单个的算出数量,不能联合下面语句查询,但我还是谢谢你的帮助,谢谢!
sql="select paidan_name,count(bx_id) as danshu,sum(user_feiyong) as user_feiyong,sum((chuangshou))as chuangsho ... [/quote]
你这句也只能求出每个工程师的数据吧?
其实你总计根本没必要放在sql语句里面来完成,你把每个工程师的记录都查询出来,然后肯定要用循环来显示,在循环的时候,弄几个变量,然后累加起来就好了
页:
[1]
