您的位置:程序门 -> vb -> 数据库(包含打印,安装,报表)



求sql语句


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


求sql语句
发表于:2007-08-02 10:46:35 楼主
select   sum(a),sum(b)
from   t
where   c   between   0   to   5

select   sum(a),sum(b)
from   t
where   c   between   0   to   13

select   sum(a),sum(b)
from   t
where   c   between   0   to   16

怎么把三个和为一个sql,其中between   后面总是0
发表于:2007-08-02 10:51:581楼 得分:0
加union:

select   sum(a),sum(b)
from   t
where   c   between   0   to   5

union

select   sum(a),sum(b)
from   t
where   c   between   0   to   13

union

select   sum(a),sum(b)
from   t
where   c   between   0   to   16
发表于:2007-08-02 10:54:472楼 得分:0
楼上正解
这样的查询结果有三条记录,分别对三个条件
发表于:2007-08-02 10:58:263楼 得分:0
还有没有别的方法?
如果要合100个,这样是不是很累呀
发表于:2007-08-02 11:08:254楼 得分:0
楼主没说明白数据是怎么排的啊,如果就是两列只有按楼顶的写法,
还有一种可以参照
http://community.csdn.net/expert/topic/5688/5688523.xml?temp=.9255792
发表于:2007-08-02 14:36:415楼 得分:0
這也是一種格式

select
sum(case   when   c   between   0   and   5   then   a   else   0   end)   as     a1,
sum(case   when   c   between   0   and   5   then   b   else   0   end)   as     b1,
sum(case   when   c   between   0   and   13   then   a   else   0   end)   as     a2,
sum(case   when   c   between   0   and   13   then   b   else   0   end)   as     b2,
sum(case   when   c   between   0   and   16   then   a   else   0   end)   as     a3,
sum(case   when   c   between   0   and   16   then   b   else   0   end)   as     b3
from
t
发表于:2007-08-02 15:15:456楼 得分:0
帮顶~
张下见识!!
发表于:2007-08-02 15:57:227楼 得分:0
select
sum(case   when   c   between   0   and   5   then   a   else   0   end)   as   a1,
sum(case   when   c   between   0   and   5   then   b   else   0   end)   as   b1,
sum(case   when   c   between   0   and   13   then   a   else   0   end)   as   a2,
sum(case   when   c   between   0   and   13   then   b   else   0   end)   as   b2,
sum(case   when   c   between   0   and   16   then   a   else   0   end)   as   a3,
sum(case   when   c   between   0   and   16   then   b   else   0   end)   as   b3
发表于:2007-08-02 17:09:428楼 得分:0
还是在程序上实现吧,一百个,就是单sql都要几公里长了
发表于:2007-08-02 17:22:529楼 得分:0
首先要知道你的5,13,16怎么得来的
发表于:2007-08-02 22:25:0110楼 得分:0
可以动态甘样生成sql,或把每一次数据放到临时表再显示出来,唔一定要一次过做完!


快速检索

最新资讯
热门点击