select
这该写什么呢 isuse,
sum(decode(b.ign, 1, 1, 0)) naturals,
sum(decode(b.sign, 2, 2, 0)) depose,
sum(decode(b.sign, 3, 3, 0)) blank,
sum(decode(b.sign, 4, 4, 0)) other
from t_fsputinstore a, t_fsbillactive b现在数据库有有N条数据,其中sign分为
0
1 naturals
2 depose
3 blank
4 blankisuse为所有大于0的状态数据的集合
sum(sign>0)的数据
或者1+2+3+4的合请问该怎么写
这该写什么呢 isuse,
sum(decode(b.ign, 1, 1, 0)) naturals,
sum(decode(b.sign, 2, 2, 0)) depose,
sum(decode(b.sign, 3, 3, 0)) blank,
sum(decode(b.sign, 4, 4, 0)) other
from t_fsputinstore a, t_fsbillactive b现在数据库有有N条数据,其中sign分为
0
1 naturals
2 depose
3 blank
4 blankisuse为所有大于0的状态数据的集合
sum(sign>0)的数据
或者1+2+3+4的合请问该怎么写
解决方案 »
- spotlight on oracle的使用
- 关于oracle游标的简单问题!
- 请问oracle里对应mssql里addday()的函数是什么?
- 再来一贴,我创建的存储过程PLS-00905: 对象 JTJ.CARINFO 无效,帮忙看看
- Oracle又没有类似MSSQL事件探查器的工具
- 插入日期型数据错误
- 菜鸟混鸡年问题系列2
- 一次insert500万条记录,是一次提交快,还是分几次提交快
- 有关DEVELOPER/2000中建树的问题
- Oracle中触发器问题请教!!!!!!!!
- 写SQL文时,怎么实现如果一个参数不存在,那么对应的检索条件就不执行?
- oracle 两个表之间(结构相同)如何导数据?
select sum(b.sign) isuse,
sum(decode(b.ign, 1, 1, 0)) naturals,
sum(decode(b.sign, 2, 2, 0)) depose,
sum(decode(b.sign, 3, 3, 0)) blank,
sum(decode(b.sign, 4, 4, 0)) other
from t_fsputinstore a, t_fsbillactive b
这样吗?
select
isuse,
sum(decode(substr(b.sign,1,instr(b.sign,' ',1)), 1, 1, 0)) naturals,
sum(decode(substr(b.sign,1,instr(b.sign,' ',1)), 2, 2, 0)) depose,
sum(decode(substr(b.sign,1,instr(b.sign,' ',1)), 3, 3, 0)) blank,
sum(decode(substr(b.sign,1,instr(b.sign,' ',1)), 4, 4, 0)) other
from t_fsputinstore a, t_fsbillactive b 取空格前的数字来判断就OK了!
isuse,
sum(decode(substr(b.sign,1,instr(b.sign,' ',1)-1), 1, 1, 0)) naturals,
sum(decode(substr(b.sign,1,instr(b.sign,' ',1)-1), 2, 2, 0)) depose,
sum(decode(substr(b.sign,1,instr(b.sign,' ',1)-1), 3, 3, 0)) blank,
sum(decode(substr(b.sign,1,instr(b.sign,' ',1)-1), 4, 4, 0)) other
from t_fsputinstore a, t_fsbillactive b
isuse为不是0的和
sum(b.sign)就把所有的(0,1,2,3,4)加起来了我要排除为0的值
反正isuse取值最小为0,你取>0的和不是跟取全部的和是一样的吗?
我就是不明白你加0和不加0有什么区别,数字歧视嘛
那你用sum(decode(b.sign,0,null,b.sign)) isuse 吧
把取0的过滤掉