热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

oracle函数(一)

*字符函数**变成大写*selectUpper(abcde)fromdual;*变成小写*selectlower(ADCSE)fromdual;*第一个字母变成大写*s

/*字符函数*/
/*变成大写*/
select Upper('abcde') from dual;
/*变成小写*/
select lower('ADCSE') from dual;
/*第一个字母变成大写*/
select Initcap('dkdkdkdkd') from dual;
/*合并字符*/
select concat('a', 'b')from dual;select 'a' || 'b'from dual;/*截取字符串*/select substr('abcde', length('abcde') - 2) from dual;/*从开始的位置截取要的个数字符串,-代表从后向前计算,+代表从前向后计算*/
select substr('abcde', -5, 3) from dual;
/*计算字符串长度 不区分半角全角*/
select Length(t.membername)from MEMBERINFO t/*替换*/select replace('abcae', 'a', 'm') from dual;/*查询匹配字符串所在的位置 相当于 index of*/
select Instr('Hello World', 'or') from dual;
/*左侧填充*/
select Lpad('Smith', 10, '*')from dual/*右侧填充*/select Rpad('Smith', 10, '*')from dual/*去除左右空格*/select trim(' dfd ') from dual;/*数值函数*/
/*四舍五入*/
select round(415, -1) from dual;
select round(414.21, 1) from dual;/*取余*/
select Mod(12, 11)from dual;/*TRUNC(number,num_digits)Number 需要截尾取整的数字。Num_digits 用于指定取整精度的数字。Num_digits 的默认值为 0。TRUNC()函数截取时不进行四舍五入*/select trunc(123.458) from dual; --123
select trunc(123.458, 0) from dual; --123
select trunc(123.458, 1) from dual; --123.4
select trunc(123.458, -1) from dual; --120
select trunc(123.458, -4) from dual; --0
select trunc(123.458, 4) from dual; --123.458
select trunc(123) from dual; --123
select trunc(123, 1) from dual; --123
select trunc(123, -1) from dual; --120/*日期函数*/
/*计算月份差*/
select months_between(sysdate, t.createdate)from MEMBERINFO t;/*增加月份*/select add_months(sysdate, 1)from dual;/*得到下一个星期一的日期*/select next_day(sysdate, '星期一')from dual;/*本月最后一天*/select last_day(sysdate) from dual;/*转换函数*/
--获得当前年
select to_char(sysdate, 'yyyy') from dual;
--获得当前年月日
select to_char(sysdate, 'fmyyyy-mm-dd') from dual;
--格式化价格样式
select to_char('11112222', 'L999,999,999') from dual; --¥11,112,222
--
返回在星期, 星期日为1,星期一为2,星期二为3.........星期六为7
select to_char(sysdate, 'D') from dual;--转化成数字
select to_number('13') + to_number('14') from dual;--转化成日期
select to_date('20090210', 'yyyyMMdd') from dual;/*通用函数*/
-- 如为空 返回默认值
select nvl(null, 0)from dual;-- 如果表达式 exp1 与 exp2 的值相等则返回null,否则返回exp1的值select nullif('aaa', 'aaa') from dual;--如果参数表达式expr1值为NULL,则NVL2()函数返回参数表达式expr3的值;如果参数表达式expr1值不为NULL,则NVL2()函数返回参数表达式expr2的值。
select nvl2(null, '11' + '22', '22') total from dual;
--返回表达式中第一个非空表达式
select coalesce(null, 11, 0) from dual;--case 表达式
select case t.memberstatewhen '10' then'初建档未生效'when '20' then'待激活状态'when '30' then'已激活状态'when '50' then'停用'when '60' then'退费'when '70' then'删除'else'未知状态'end 状态from MEMBERINFO t;--DECODE 函数 与case 表达式类似 decode() 函数也用于实现多路分支结构
select decode(memberstate,'10','初建档未生效','20','待激活状态','30','已激活状态','50','停用','60','退费','70','删除','未知状态') 部门from MEMBERINFO;/*分组函数*/
--count 计算总数 没有数据显示0
select count(*) from dual;
--平均值
select avg(memberstate) from MEMBERINFO;
--max 最大值
select max(memberstate) from MEMBERINFO;
--min 最小值
select min(memberstate) from MEMBERINFO;
--sum 求和
select sum(memberstate) from MEMBERINFO;--Group by 子句 可以与分组函数一起使用
select avg(memberid), memberstate from memberinfo t group by memberstate;--having 子句
SELECT Customer,SUM(OrderPrice) FROM Orders GROUP BY Customer HAVING SUM(OrderPrice)<2000

 



推荐阅读
  • 本文介绍了Oracle存储过程的基本语法和写法示例,同时还介绍了已命名的系统异常的产生原因。 ... [详细]
  • Java String与StringBuffer的区别及其应用场景
    本文主要介绍了Java中String和StringBuffer的区别,String是不可变的,而StringBuffer是可变的。StringBuffer在进行字符串处理时不生成新的对象,内存使用上要优于String类。因此,在需要频繁对字符串进行修改的情况下,使用StringBuffer更加适合。同时,文章还介绍了String和StringBuffer的应用场景。 ... [详细]
  • Oracle分析函数first_value()和last_value()的用法及原理
    本文介绍了Oracle分析函数first_value()和last_value()的用法和原理,以及在查询销售记录日期和部门中的应用。通过示例和解释,详细说明了first_value()和last_value()的功能和不同之处。同时,对于last_value()的结果出现不一样的情况进行了解释,并提供了理解last_value()默认统计范围的方法。该文对于使用Oracle分析函数的开发人员和数据库管理员具有参考价值。 ... [详细]
  • 前景:当UI一个查询条件为多项选择,或录入多个条件的时候,比如查询所有名称里面包含以下动态条件,需要模糊查询里面每一项时比如是这样一个数组条件:newstring[]{兴业银行, ... [详细]
  • 摘要: 在测试数据中,生成中文姓名是一个常见的需求。本文介绍了使用C#编写的随机生成中文姓名的方法,并分享了相关代码。作者欢迎读者提出意见和建议。 ... [详细]
  • 本文讨论了如何使用IF函数从基于有限输入列表的有限输出列表中获取输出,并提出了是否有更快/更有效的执行代码的方法。作者希望了解是否有办法缩短代码,并从自我开发的角度来看是否有更好的方法。提供的代码可以按原样工作,但作者想知道是否有更好的方法来执行这样的任务。 ... [详细]
  • 本文讨论了编写可保护的代码的重要性,包括提高代码的可读性、可调试性和直观性。同时介绍了优化代码的方法,如代码格式化、解释函数和提炼函数等。还提到了一些常见的坏代码味道,如不规范的命名、重复代码、过长的函数和参数列表等。最后,介绍了如何处理数据泥团和进行函数重构,以提高代码质量和可维护性。 ... [详细]
  • 在Oracle11g以前版本中的的DataGuard物理备用数据库,可以以只读的方式打开数据库,但此时MediaRecovery利用日志进行数据同步的过 ... [详细]
  • Java SE从入门到放弃(三)的逻辑运算符详解
    本文详细介绍了Java SE中的逻辑运算符,包括逻辑运算符的操作和运算结果,以及与运算符的不同之处。通过代码演示,展示了逻辑运算符的使用方法和注意事项。文章以Java SE从入门到放弃(三)为背景,对逻辑运算符进行了深入的解析。 ... [详细]
  • 从Oracle安全移植到国产达梦数据库的DBA实践与攻略
    随着我国对信息安全和自主可控技术的重视,国产数据库在党政机关、军队和大型央企等行业中得到了快速应用。本文介绍了如何降低从Oracle到国产达梦数据库的技术门槛,保障用户现有业务系统投资。具体包括分析待移植系统、确定移植对象、数据迁移、PL/SQL移植、校验移植结果以及应用系统的测试和优化等步骤。同时提供了移植攻略,包括待移植系统分析和准备移植环境的方法。通过本文的实践与攻略,DBA可以更好地完成Oracle安全移植到国产达梦数据库的工作。 ... [详细]
  • 十大经典排序算法动图演示+Python实现
    本文介绍了十大经典排序算法的原理、演示和Python实现。排序算法分为内部排序和外部排序,常见的内部排序算法有插入排序、希尔排序、选择排序、冒泡排序、归并排序、快速排序、堆排序、基数排序等。文章还解释了时间复杂度和稳定性的概念,并提供了相关的名词解释。 ... [详细]
  • 总结一下C中string的操作,来自〈CPrimer〉第四版。1.string对象的定义和初始化:strings1;空串strings2(s1);将s2初始 ... [详细]
  • 正则表达式及其范例
    为什么80%的码农都做不了架构师?一、前言部分控制台输入的字符串,编译成java字符串之后才送进内存,比如控制台打\, ... [详细]
  • C语言的经典程序有哪些
    本篇内容介绍了“C语言的经典程序有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何 ... [详细]
  • JAVA流程控制结构在java中有三种流程控制结构:顺序结构,选择结构,循环结构顺序结构:顺序结构,是指程序从 ... [详细]
author-avatar
倩女__沃洪伟
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有