Oracle中的SUM用法讲解
编程学习 2021-07-05 16:08www.dzhlxh.cn编程入门
今天长沙网络推广就为大家分享一篇关于Oracle中的SUM用法讲解,长沙网络推广觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随长沙网络推广来看看吧
Oracle中的SUM条件查询
1、按照区域编码分组查询区域编码、IPTV_NBR不为空的数量、ACC_NBR不为空的数量、所有用户数量
SELECT AREA_CODE, SUM ( CASE WHEN IPTV_NBR IS NULL or IPTV_NBR = '' THEN 0 ELSE 1 END ), SUM ( CASE WHEN ACC_NBR IS NULL or ACC_NBR = '' THEN 0 ELSE 1 END ), COUNT (*) FROM GAT_SQMS.GAT_SQMS_BAND_IPTV_VIEW GROUP BY AREA_CODE;
2、使用sum条件查询
查询IPTV_NBR不为空的数量
SUM ( CASE WHEN IPTV_NBR IS NULL or IPTV_NBR = '' THEN 0 ELSE 1 END )
SUM里边使用CASE WHEN 语句
当IPTV_NBR IS NULL 为0,ELSE 为1
oracle中sum字符串方法
CREATE OR REPLACE FUNCTION SumString(i_TableName IN VARCHAR2,
i_GroupColName IN VARCHAR2,
i_ResultColName IN VARCHAR2,
i_GroupColValue IN VARCHAR2,
i_Separator IN VARCHAR2)
RETURN VARCHAR2 IS
TYPE T_Cur IS REF CURSOR;
C_Cur T_Cur;
V_Sql VARCHAR2(2000);
V_Result VARCHAR2(2000);
V_Tmp VARCHAR2(200);
V_Cnt NUMBER := 0;
BEGIN
V_Result := ' ';
V_Sql := 'SELECT ' || i_ResultColName || ' FROM ' || i_TableName ||
' WHERE ' || i_GroupColName || ' = ' || i_GroupColValue;
OPEN C_Cur FOR V_Sql;
LOOP
FETCH C_Cur
INTO V_Tmp;
EXIT WHEN C_Cur%NOTFOUND;
IF V_Cnt = 0 THEN
V_Result := V_Tmp;
ELSE
V_Result := V_Result || i_Separator || V_Tmp;
END IF;
V_Cnt := V_Cnt + 1;
END LOOP;
CLOSE C_Cur;
RETURN V_Result;
END SUMSTRING;
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对狼蚁SEO的支持。如果你想了解更多相关内容请查看狼蚁网站SEO优化相关链接
编程语言
- Win10 PC创意者更新慢速版15048改进内容与已知问题
- 用纯CSS3实现网页中常见的小箭头
- 神舟笔记本问题集锦
- Bellnames常用操作说明
- 揭秘手机淘宝搜索排序的影响因素
- XHTML入门学习教程-网页Head和DTD
- 笔记本光驱保养常用知识
- hzhost虚拟主机系统致命漏洞
- 电脑无线网络出现红色叉叉无线网卡打不开的六
- 16项评比不得不看 机箱哪些功能最实用
- AI怎么绘制一个呲牙的qq表情-
- 红帽指点杆机械键盘 TEX Yoda上手体验测评
- 笔记本电脑保养常识有哪些-笔记本保养常识总结
- cdr怎么设计圆角矩形效果的图标-
- 在XSLT样式表中声明命名空间小结
- Fireworks教程-常用操作技巧总结