当前位置: 首页 > news >正文

详尽的oracle sql函数

1,CHR

    输入整数,返回对应字符。

    用法:select chr(65),chr(78) from dual;

2,ASCII

    输入字符,返回对应ASCII码。

    用法:select ascii('A'),ascii('B') from dual;

 

3,CONCAT

    输入两个字符串,返回拼接的字符串。

    用法:select concat('tpc','1989') from dual;

4,INITCAP

    将输入的字符串首字母变大写。

    用法:select initcap('tpc') from dual;

5,INSTR

    instr(s1,s2,inx,loc),从s1中的inx位置开始查早第loc次出现s2的位置,没有则返回0.

    用法:select instr('tpc is good','o',1,2) from dual;

 

6,LENGTH

    返回输入字符串的长度.

    用法:select length('tpc') from dual;

7,LOWER

    将字符串所有字符变为小写

    用法:select lower('TPC') from dual;

8,UPPER

    将字符串所有字符变为大写.

    用法:select upper('tpc') from dual;

9,RPAD和LPAD

    rpad(string,padded_length,[pad_string])和lpad(string,padded_length,[pad_string])

    从右边(左边)对字符串使用指定的字符进行填充.

  • string:被填充的字符串
  • padded_length:字符的长度,是返回的字符串的数量,如果这个数量比原字符串的长度要短,rpad函数将会把字符串截取成从左到右的n个字符;
  • pad_string 是个可选参数,这个字符串是要粘贴到string的右边,如果这个参数未写,rpad将会在string的右边粘贴空格。

    用法:select rpad('tpc',8,'*') from dual;

10,RTRM和LTRM

    rtrim(string,charlist)和ltrim(string,charlist)

    从字符串右侧(左侧)删除空格或其他预定义字符

  • string:必需参数,代表需要被转换的字符串
  • charlist:可选参数,指定要从string右侧(左侧)删除的字符或字符集。如果省略此参数,则默认删除空格

    用法:select rtrim('tpc***', '*') from dual;

11,SUBSTR

    substr(string, pos, len)

    从字符串string的pos位置开始截取len长度的字符串

  • string:必需参数,代表需要被操作的字符串
  • pos:必需参数,代表截取的位置
  • len:可选参数,代表需要截取的长度。不输入该参数的代表从pos位置一直截取到末尾

    用法:select substr('tpc is a man',1,3) from dual;

12,RPLACE

    replace(string, str1, str2)

    将字符串string中的str1字符串替换成str2字符串

  • string:必需参数,代表需要被操作的字符串
  • pos:必需参数,代表要被替换的字符串
  • len:必需参数,代表要去替换的字符串

    用法:select replace('tpc is a woman', 'woman', 'man') from dual;

13,SOUNDEX

    返回一个与给定字符串读音相同的字符串

    用法:

select col1from (select 'too' as col1from dualunion allselect 'two' as col1from dualunion allselect 'one' as col1from dual) awhere soundex(a.col1) = soundex('too')

 

14,ABS

    返回指定值的绝对值.

    用法:select abs(30),abs(-30) from dual;

15,ACOS

    返回反余弦的值.

    用法:select acos(-1) from dual;

16,ASIN

    返回反正弦的值.

    用法:select asin(1) from dual;

17,ATAN

    返回反正切的值.

    用法:select atan(1) from dual;

18,CEIL

    返回大于或者等于给点数字的最小整数.

    用法:select ceil(3.1415) from dual;

19,COS

    返回余弦的值.

    用法:select cos(1) from dual;

20,COSH

    返回双曲余弦值.

    用法:select cosh(10) from dual;

21,EXP

    返回数e的n次方根.

    用法:select exp(1),exp(3) from dual;

22,FLOOR

    对给定数字取整数

    用法:select floor(3.14156) from dual;

23,LN

    返回给定数字的对数值.

    用法:select ln(7) from dual;

24,LOG

    log(n1, n2)

    返回一个以n1为底n2的对数.

    用法:select log(2, 4) from dual;

25,MOD

    mod(n1, n2)

    返回n1除以n2的余数.

    用法:select mod(3,2) from dual;

26,POWER

    power(n1, n2)

    返回n1的n2次方根值

    用法:select power(2,10) from dual;

27,ROUND

    round(num, right)

    对给定数值进行舍入,舍入符合四舍五入规则

  • num:必须参数,代表输入的数字
  • right:可选参数,代表需要保留的小数点位数,不输入代表不保留小数位

    用法:select round(3.1415),round(3.67),round(3.1415, 2) from dual;

28,TRUNC

    trunc(num, right)

    对给定数值进行舍入,不进行四舍五入

  • num:必须参数,代表输入的数字
  • right:可选参数,代表需要保留的小数点位数,不输入代表不保留小数位

    用法:select trunc(3.1415),trunc(3.67),trunc(3.1415, 2) from dual;

29,SIGN

    获取输入数字的符号。输入数字大于0返回1,小于0返回-1,等于0返回0

    用法:select sign(1),sign(-1),sign(0) from dual;

30,SIN

    返回正弦值.

    用法:select sin(0.234) from dual;

31,SINH

    返回双曲正弦值.

    用法:select sinh(10) from dual;

32,SQRT

    返回输入数字的根.

    用法:select sqrt(100) from dual;

33,TAN

    返回正切值.

    用法:select tan(30) from dual;

34,TANH

    返回双曲正弦值.

    用法:select tanh(30) from dual;

35,ADD_MONTHS

    add_months(date1, num1)

    对输入日期增加或减去月份.

  • date1:必须参数,代表输入的日期
  • num1:必须参数,代表需要增加或减去的月份(负数代表减去)

    用法:select add_months(sysdate, -2) from dual;

36,LAST_DAY

    获取给定日期月份的最后一天.

    用法:select last_day(sysdate) from dual;

37,MONTHS_BETWEEN

    months_between(date1, date2)

    获取date1与date2相差的月份数量.

    用法:select months_between(sysdate, sysdate-54) from dual;

38,NEW_TIME

    new_time(date1, ZONE1, ZONE2)

    获取date1时间在ZONE1时区下对应ZONE2时区的时间.

    用法:select new_time(sysdate, 'CST', 'GMT') from dual;

39,NEXT_DAY

    next_day(date1, weekday)

    获取date1对应时间的下一个星期对应weekday的日期

  • date1:必需参数,代表输入的要计算的日期
  • weekday:必需参数,代表具体的星期几(1代表星期天,2代表星期一,。。。7代表星期六)

    用法:select next_day(sysdate, 1) from dual;

40,ROWIDTOCHAR

    将rowid类型转换为字符串类型.

    用法:select rowid,rowidtochar(rowid) from t_code;

41,CONVERT

    convert(string, encode1, encode2)

    将字符串string从字符集encode2转换为encode1.

  • string:必需参数,代表需要转换的字符串
  • encode1:必需参数,代表需要被转换为的字符集
  • encode2:可选参数,代表需要被转换的的字符集

    用法:select convert('李白','UTF8','ZHS16GBK') from dual;

42,HEXTORAW

    将一个十六进制的构成的字符串转换为RAW类型.

    用法:select hextoraw(ltrim(to_char(13143124314,'XXXXXXXXX'))) from dual;

43,RAWTOHEX

    将一个raw类型数据转换得到16进制数据.

    用法:select rawtohex('tpc') from dual;

44,TO_CHAR

    to_char(input, format)

    返回经过format格式化的input数据.

    用法:select to_char(1234.34,'9,9,9,9.$99'),to_char(sysdate,'yyyy-mm-dd') from dual;

45,TO_DATE

    to_date(string, format)

    返回经过format格式化的string数据.

    用法:select to_date('2024-11-21','yyyy/mm/dd') from dual;

46,TO_NUMBER

    将输入字符转换为数字.

    用法:select to_number('100') from dual;

47,DUMP

    dump(input, ex, start, len)

    以ex进制格式获取input数据的从start位置开始len长度的数据

  • input:必需参数,代表输入的数据
  • ex:可选参数,数据导出的进制格式,可以是2进制,16进制,8进制等
  • start:可选参数,代表数据截取的开始位置
  • len:可选参数,代表数据截取长度

    用法:select dump(1231515), dump(1231515,16), dump(1231515,1, 3) from dual;

48,USERENV

    获取当前用户对应的环境变量值.

    用法:select userenv('isdba') from dual;

http://www.lryc.cn/news/497912.html

相关文章:

  • SAP IDOC Error VG205
  • DSP 的 CV 算子调用
  • WMI攻击-基础篇(一)
  • 使用Pygame创建一个简单的消消乐游戏
  • 证明直纹面是可展曲面沿着直母线,曲面的切平面不变
  • Chrome控制台 网站性能优化指标一览
  • Typora创建markdwon文件的基础语法
  • 《嵌入式硬件设计》
  • 【AIGC】大模型面试高频考点-位置编码篇
  • 如何使用 SQL 语句创建一个 MySQL 数据库的表,以及对应的 XML 文件和 Mapper 文件
  • Unity性能优化---动态网格组合(二)
  • JVM学习《垃圾回收算法和垃圾回收器》
  • GPS模块/SATES-ST91Z8LR:电路搭建;直接用电脑的USB转串口进行通讯;模组上报定位数据转换地图识别的坐标手动查询地图位置
  • 什么是TCP的三次握手
  • 《Clustering Propagation for Universal Medical Image Segmentation》CVPR2024
  • Linux ifconfig ip 命令详解
  • Vue3 对于echarts使用 v-show,导致显示不全,宽度仅100px,无法重新渲染的问题
  • C++实现俄罗斯方块
  • 鸿蒙分享:添加模块,修改app名称图标
  • 扫描IP段内的使用的IP
  • 【专题】虚拟存储器
  • Python之爬虫入门--示例(2)
  • 5G CPE终端功能及性能评测(四)
  • 人工智能驱动的骗局会模仿熟悉的声音
  • 电子病历静态数据脱敏路径探索
  • 混合云策略在安全领域受到青睐
  • Echarts使用平面方法绘制三维立体柱状图表
  • java-判断语句
  • 11.14【JAVA EXP3】【DEBUG】
  • UE5 和 UE4 中常用的控制台命令总结