惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

有赞技术团队
有赞技术团队
B
Blog
IT之家
IT之家
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Last Week in AI
Last Week in AI
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
人人都是产品经理
人人都是产品经理
博客园 - 聂微东
量子位
博客园 - 叶小钗
T
Tailwind CSS Blog
小众软件
小众软件
WordPress大学
WordPress大学
酷 壳 – CoolShell
酷 壳 – CoolShell
博客园 - Franky
雷峰网
雷峰网
博客园 - 三生石上(FineUI控件)
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
Blog — PlanetScale
Blog — PlanetScale
V
V2EX
博客园_首页
I
InfoQ
B
Blog RSS Feed
Microsoft Azure Blog
Microsoft Azure Blog

博客园 - 老公鸡

sharepoint 2010? Jsp中使用数据库连接池. MVC2 学习之 UrlRouting Oracle 基础学习之索引 Oracle 基本操作之sql语句 Oracle基本操作 Oracle 数据库学习一 小黑日记三 结束了 mvc 3 学习 第一天 准备 小黑 成长日记第二天 2011年6月15日,同事捡了一只小猫回来了 NHibernate 学习 第十二天 存储过程的使用 NHibernate 学习 第十一天 对多对的关系处理 NHibernate 学习 第十天 一对多的外键关系处理 NHibernate 学习 第九天 外键关系的处理之一对一 NHibernate学习 第八天 组件的运用 NHibernate学习 第七天 其它的学习资料 NHibernate学习 第六天 NHibernate 中的查询 NHibernate 学习第五天 用户表的增,删,改,查
Oracle基础学习之函数
老公鸡 · 2011-06-23 · via 博客园 - 老公鸡

1. 日期函数  默认格式为 日-月-年

extarct(类型 from 日期 )  --将指定日期抽出指定的部分 类型可以是 year,day,month,hour,minute,second

months_between (日期一,日期二)  得到两个日期中相差的月份

add_months(日期,天数)      指定日期加上指定天数

next_day(日期,星期几)      得到指定日期后面的指定星期几的日期 next_day('23-6月-11','星期一') 得到的是 2011年6月27 因为这天是星期一

last_day(日期)        得到指定日期所在月份的最后一天

emp:

SELECT EXTRACT(YEAR FROM SYSDATE) FROM DUAL; return CurrentYear
SELECT EXTRACT(MONTH FROM SYSDATE) FROM DUAL; return CurrentMonth
SELECT EXTRACT(DAY FROM SYSDATE) FROM DUAL; return CurrentDay

取时分秒

SELECT EXTRACT(HOUR FROM TIMESTAMP '2005-10-10 10:10:10')FROM DUAL;

日期格式转换

select to_char(sysdate,'YYYY"年"MM"月"DD"日" HH24:MI:SS') from dual;  //注意年字要用""括起来

2. DECODE()函数

语法

DECODE(值,条件1,结果1,条件2,结果2....)  相当于循环判断

emp:

select decode(u_name,'张三','男人','李四','女人') from user  

3. NVL()函数

语法

NVL(列,默认值)

emp:

select NVL(u_name,'无名') from uesrs

4. 字符函数

initcap(值)                首字母大写

lower(值)                 转为小写

upper(值)                转为大写

ltrim(值,去除内容)            左剪裁                  ltrim('abcdef','abc')   == def

rtrim(值,去除内容)            右剪裁

translate(值,替换内容,替换值)                         translate('tom and joy','ao','12' )   ==   t2m 1nd j2y

replace(值,替换内容,替换值)   将指定字符串替换成指定字符串         replace('tom and joy','o','mm')  ==  tmmm and jmmy

instr(值,要找的值)       找出指定字符串位置,只找第一个     instr('tom and joy','a')  ==   5  instr('tom and joy','o')  == 2

substr(值,起始位置,取多长)    截取字符串,字符串从1开始      substr('tom and joy',5,3)  == and

concat(值1,值2)          连接字符串              concat('i'm ',' superman')  == i'm superman

5. 数字函数

round(数字,精度)    四舍五入    round(3.1415,2)  == 3.14   round(3.1415,3) == 3.142

round(日期,格式)    对日期进行四舍五入 round(to_date('23-7月-11'),'YEAR')  如果月份大于7 到2012年1月1日 否则就是11年1月1日

if 年>7  年= 年+1

if 月>15  月=月+ 1

if 天%7 ==0 天= 天+3

6. 转换函数

to_char(值,转换类型)  转换成字符串类型  to_char(1234.5,'$9999.9')  == $1234.5   to_char(sysdate,'yyyy-mm-dd')

to_date(日期,格式)  将日期转换成指定格式

to_number()    转换成数值

7. 伪列

  ROWID : 产生一个新的序列号

  select rowid,u_name,u_pwd from users

  ROWNUM : 类似于TOP关键字的效果

  select * from users where rownum < 10 //返回十条记录