怎么掉oracle函数,oracle中函数用法

oracle 如何查看所有函数

1、安装oracle后,运行程序,输入用户名等信息登录。

创新互联建站公司2013年成立,先为武城等服务建站,武城等地企业,进行企业商务咨询服务。为武城企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。

2、下面演示sysdate的用法,这个是oracle独有的,取当前时间。

3、下面介绍to_char()函数的用法,将时间转化为特定的格式。

4、下面介绍一种将时间转化为汉字形式的时间格式及显示出星期。

5、下面演示to_date函数的使用方法,将字符串转换为标准的时间格式。

DATEDIFF怎么用oracle的函数替换掉

create

or

replace

function

datediff(type

in

varchar2,

startTime

in

varchar2,endTime

in

varchar2,v

in

varchar2)

return

number

as

v_result

number;

sql_1

varchar2(200);

begin

dbms_output.put_line('1');

if(type

=

'day')

then

sql_1

:=

'select

'||v||'(TO_NUMBER(to_date('''||startTime||''',''YYYY-MM-DD'')

-

to_date('''||endTime||''',''YYYY-MM-DD'')))

from

dual';

dbms_output.put_line('1');

elsif(type

=

'month')

then

sql_1

:=

'select

'||v||'(months_between(to_date('''||startTime||''',''YYYY-MM-DD'')

-

to_date('''||endTime||''',''YYYY-MM-DD'')))

from

dual'

;

dbms_output.put_line('1');

elsif(type

=

'week')

then

dbms_output.put_line('1');

sql_1

:=

'select

'||v||'(TO_NUMBER(to_date('''||startTime||''',''YYYY-MM-DD'')

-

to_date('''||endTime||''',''YYYY-MM-DD''))/7)

from

dual

';

end

if;

dbms_output.put_line(sql_1);

EXECUTE

IMMEDIATE

sql_1

into

v_result

;

return

(v_result);

end;

使用时候可以这样:

select

datediff('week','2012-09-01','2012-08-01','round')

from

dual

;

--说明'week'表示周,'month'表示月,'day'表示天

--中间传俩日期

--第四个参数:周或月四舍五入用‘round’

,向上取整用‘ceil’

向下取整用‘floor’

oracle 中如何调用函数

call GetPY(@str varchar(500)) 就可以了

sql2005中是exec GetPY(@str varchar(500)) 。

Oracle函数的使用

接收字符返回字符或数值时可以使用dual伪表

1、把小写字符转换成大写

select supper(“smi”) form dual

2、把大写转换成小写

lower(“SMI”)

3、首字母大写

initcap(“smi”)

4、字符串的连接可以使用concat,也可以使用    建议使用

concat(“hello”“world”) 结果为helloworld

5、字符串的截取,使用substr,第一个参数为字符串,第二个参数是索引,第三个参数结束索引(开始索引使用0和1效果一样)

substr(hello,0,3) 结果为hel

6、获取字符串长度

length(“hello”)

7、字符串替换,第二个参数为被替换的字符串,第三个是替换的字符串

replace(“hello”,“l”,“x”) 结果为hexxo

1、四舍五入函数ROUND()

默认取整,可以指定保留位数

round(12.523)  结果为13

round(12.537,2) 结果为12.54

2、取整TRUNC

默认全部去掉小数,可以指定位数

trunc(12.789) 结果为12

3、取余数MOD

mod(10,3) 结果为1

oracle中提供了很多和日期相关的函数,包括日期的加减

日期 - 数字 =日期

日期 - 日期 = 数字(天)

1、如:查询员工进入公司的走数

(sysdate - 入职日期)/7

注:当前日期查询select sysdate form dual

2、查询所有员工进入公司的月数

获取两个时间段的月数使用months_between(sysdate,入职日期)

3、获取几个月后的日期:add_months()

如:获取员工三个月后的日期

add_months(sysdate,3)

4、如求出下星期一是什么时候

指定给出下次某日期数next_date()

next_date(sysdate,“星期一”)

5、求日期的最后一天last_day()

求出本月的最后一天

last_day(sysdate)

1、to_char字符串转换函数

如:将所有员工的入职日期的年、月分开

注:在划分时需要通配符

年:yyyy  月:mm  日:dd

时:HH 分:mi  秒:ss

定义时间格式

to_char(sysdate,“yyyy-mm-dd HH24:mi:ss”)

在10以下的月数前面会默认加上前导零,去除加上fm

to_char(sysdate,“fmyyyy-mm-dd HH24:mi:ss”)

to_char还可以给数字做格式化

如将员工的工资按三位“,”分隔

to_char(工资,“99,999”) 9代表数字

如果想在钱上加上国家符号

美元使用

中文使用l

to_char(工资,“99,999”)

to_char(工资,“l99,999”)

2、to_number数值转换函数,将字符串转换成数值

to_number(“10”) +to_number(“10”)

3、to_date日期转换函数,将字符串数据转换成日期类型

to_date(“1997-05-12”,“YYYY-mm-dd”)  1997/05/12

1、空值处理 nvl

如果在查询的时候存在空值的情况可以使用

nvl(comm,0) 当comm的列值为空时,用0代替

2、decode函数

该函数类似于if ...else if ...else

语法:decode(列名/值,search1,result1,search2,result2,default)

decode(中国,中国,我是中国,美国,我是美国,其他)

如果为中国返回我是中国,为美国返回我是美国,为其他字符则返回其他。

3、case when 与decode差不多

语法 case when city=中国 then 我是中国

          when city=美国 then 我是美国

            else 其他

ORACLE函数怎么修改

使用to_date函数。

你返回的varchar2总有一定的规则吧,比如是yyyy-mm-dd hh24:mi:ss格式的。

那你的返回语句就写成

return to_date(enddate, 'yyyy-mm-dd hh24:mi:ss');

分享名称:怎么掉oracle函数,oracle中函数用法
URL地址:https://www.cdcxhl.com/article38/hedjpp.html

成都网站建设公司_创新互联,为您提供微信小程序网站导航虚拟主机营销型网站建设外贸建站网站维护

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

小程序开发