oracle 中最常用的函数

================================字符函数==================================
   字符函数是 oracle 中最常用的函数

lower(char):将字符串转化为小写的格式
   select lower(ename) from emp;

upper(char):将字符串转化为大写的格式
   select upper(ename) from emp;

length(char):返回字符串的长度
   select * from emp where length(ename) = 5


substr(char,m,n):取字符串的子串
   select substr(ename,1,3) from emp

replace(char1 , search_string , replace_string)
   select upper(substr(ename,1,1)) || lower(substr(ename,2,length(ename)-1)) from emp

instr(char1, char2,[,n[,m]])  取子串在字符串的位置

 

====================================数学函数==================================

round(n,[m]) 四舍五入
   select round(sal,1) from emp_test where ename='ALLEN'   (保留一位小数)


trunc(n,[m])  截取数字
   select trunc(sal,1),sal from emp_test where ename='ALLEN'

mod(m,n)
floor(n)
ceil(n)


================================日期函数===================================
日期函数用于处理 date 类型的数据

1) sysdate: 该函数返回系统时间
     select sysdate from dual

2) add_months(d,n)
    ? 查找已经入职 8 个月多的员工
     select * from emp where sysdate > add_Months(hiredate,8)


3)last_day(d) 返回指定日期所在月份的最后一天
? 找出各月倒数第3天受雇的所有员工
select hiredate , last_day(hiredate) from emp
select ename,hiredate from emp where last_day(hiredate)-2 = hiredate


================================转换函数=====================================

to_char()

? 日期是否可以显示 时/分/秒
select to_char(hiredate,'YYYY-MM-DD hh24:mi:ss') from emp_test

yy; 两位数字的年份   04
yyyy: 四位数字的 2008
mm: 月份
dd: 天
hh24  ;    hh12
mi , ss --> 显示分钟/秒

? 薪水是否可以显示指定的货币符号(L表示当地语言  99999.99 与表结构有关[number(7.2)]
select to_char(sal,'L99,999.99') from emp_test

9:显示数字,并忽略前面0
0:显示数字,如倍数不足,则用0补
.: 在指定位置显示小数点
,: 在指定位置显示逗号(每百位加逗号 如上)
$: 在数字前面加美元
L: 在数字前加本地货币符号
C: 在数字前加国际货币符号
G: 在指定位置显示组分隔符
D: 在指定位置显示小数点符号(.)


? 显示1980年入职的所有员工
select * from emp_test where to_char(hiredate,'YYYY') = 1980


? 显示所有12月份入职的员工
select ename,sal,to_char(hiredate,'YYYY-MM-DD hh24:mi:ss') from emp_test where to_char(hiredate,'MM') = 12

 

===============================系统函数=========================

-- 查看当前数据库的名字
select sys_context('USERENV','db_name') from dual

-- 查看使用的语言(简体中文)
select sys_context('USERENV','language') from dual

-- 查看谁使用数据库(show user)
select sys_context('USERENV','SESSION_USER') from dual

-- 查看方案(方案跟用户是一致的)
-- 用户和方案的关系
select sys_context('USERENV','current_schema') from dual

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值