oracle常用函式

2022-03-24 16:48:54 字數 1586 閱讀 7308

一、運算子

算術運算子:+ - * / 可以在select 語句中使用

連線運算子:|| select deptno|| dname from dept; 

比較運算子:> >= = != < <= like between is null in

邏輯運算子:not and or 

集合運算子: intersect ,union, union all, minus 

要求:對應集合的列數和資料型別相同

查詢中不能包含long 列

列的標籤是第乙個集合的標籤

使用order by時,必須使用位置序號,不能使用列名

二、時間相關

select to_char(to_date('2016-12-22','yyyy-mm-dd'),'day') from dual; --指定時間是週幾

select floor(sysdate - to_date('20020405','yyyymmdd')) from dual; --兩個日期間的天數

select to_char(sysdate,'ddd'),sysdate from dual; --一年的第多少天

--當前時間的時分秒(oracle資料庫時間哦)

三. 字元函式(可用於字面字元或資料庫列)

select instr('abcfdgfdhd','fd') from dual;--擷取 4

select 'hello'||'hello world' from dual;--拼接 hellohello world

select ltrim(' abc') s1,rtrim('zhang ') s2,trim(' zhang ') s3 from dual--;去掉空格

select trim(leading 9 from 9998767999) s1,trim(trailing 9 from 9998767999) s2,trim(9 from 9998767999) s3 from dual;--去掉前後墜

select ascii('a') from dual;--轉ascii

select chr(97) from dual;--獲取字母

select length('abcdef') from dual;--計算長度

select lower('abc') s1,upper('def') s2, initcap('efg') s3 from dual;--initcap(首字母變大寫) ,lower(變小寫),upper(變大寫)

select translate('abc','b','xc') from dual; -- x是1位 結果是axc

select lpad('func',15,'=') s1, rpad('func',15,'-') s2 from dual;--lpad [左添充] rpad [右填充](用於控制輸出格式)

decode[實現if ..then 邏輯]

case[實現switch ..case 邏輯]

Oracle常用函式

一 row number over 資料甲 1 select column name column name,data type,2 row number over partition by column name order by column name row num 3 from test c...

Oracle常用函式

數學函式 1.絕對值 o select abs 1 value from dual 2.取整 大 o select ceil 1.001 value from dual 3.取整 小 o select floor 1.001 value from dual 4.取整 擷取 o select trun...

oracle常用函式

1.concat c1,c2均為字串,函式將c2連線到c1的後面,如果c1為null,將返回c2.如果c2為null,則返回c1,如果c1 c2都為null,則返回null。他和操作符 返回的結果相同 select concat slobo svoboda username from dualuse...