oracle 常用函數之 字元函數

來源:互聯網
上載者:User

標籤:arc   nvl   char   3.1   com   沒有   insert   substr   create   

-----------------------------------------------字元函數---------------------------------------------

--1: ASCII
返回字串的ASCII值
  
SELECT ASCII(‘A‘) FROM DUAL;

SELECT ASCII(‘a‘) FROM DUAL;


--2: CHR
返回整數所對應的ASCII字元

SELECT CHR(‘65‘) FROM DUAL;

SELECT CHR(400) FROM DUAL; --如果超出ACII值,則返回空

--3: CONCAT 函數
連接字串A和字串B

SELECT CONCAT(‘您好‘, ‘歡迎來到ORACLE世界‘) AS TEXT FROM DUAL;

 

--3.1 如果要串連表裡面的兩個欄位可以用||
SELECT TYPECODE || ‘____‘ || TYPE_NAME AS "TYPE" FROM USER_TYPES;

 

--4: INITCAP
返回字串並將字串的第一個字母變為大寫;
--Q 是否每個單詞的第一個字母都會變成大些? 全部單詞的首字母大寫
SELECT INITCAP(‘your didn‘‘t try your best‘) FROM DUAL;


--5: LENGTH
返回字串的長度;
--Q:返回表某條資料某個列實際長度,如果該表沒有資料,返回0

SELECT LENGTH(TYPE_NAME) FROM USER_TYPES



--6: LOWER
返回字串,並將所有的字元小寫

SELECT LOWER(‘AbcDedf Gbad‘) FROM DUAL;

--7: UPPER
返回字串,並將所有的字元大寫

SELECT UPPER(‘abcdEf‘) FROM DUAL;

 

--8: LTRIM(X,[TRIM_STRING])
LTRIM 刪除左邊出現的字串, 預設為空白字串

SELECT LTRIM(‘ hello world!‘) FROM DUAL;

SELECT LTRIM(‘hello, world‘, ‘hello‘) FROM DUAL;

--9: RTRIM(X, [TRIM_STRING])
RTRIM 刪除右邊出現的字串TRIM_STRING,預設為空白字串。

SELECT RTRIM(‘hello world! ‘) FROM DUAL;


--10: SUBSTR(string,start,count)
取子字串,從start開始,取count個

SELECT SUBSTR(‘you are right!, come on‘, 3, 30) FROM DUAL;


--11: INSTR(C1,C2,I,J)
在一個字串中搜尋指定的字元,返回傳現指定的字元的位置;
C1 被搜尋的字串
C2 希望搜尋的字串
I 搜尋的開始位置,預設為1
J 出現的位置,預設為1

SELECT INSTR(‘HELLO WORLD! WELCOME‘, ‘WORLD‘, 1) FROM DUAL;


--12: RPAD
RPAD 在列的右邊粘貼字元
--注意長度值並不是粘貼字元的長度,而是整個字串的長度,如果長度小於原始字串
--SELECT RPAD(‘HELLO‘, 4, ‘*‘) FROM DUAL; 的值為HELL


SELECT RPAD(‘HELLO‘, 10, ‘*‘) FROM DUAL;

SELECT RPAD(‘HELLO‘, 10, ‘E‘) FROM DUAL;


--13: LPAD
LPAD 在列的左邊粘貼字元
--N: 注意的問題同上
SELECT LPAD(‘WELCOME‘, 20, ‘HELLO‘) FROM DUAL;


--14: REPLACE(‘string‘,‘s1‘,‘s2‘)
string 希望被替換的字元或變數
s1 被替換的字串
s2 要替換的字串

SELECT REPLACE(‘HE LOVE YOU‘, ‘HE‘ ,‘I‘) FROM DUAL;


--15: SOUNDEX
返回一個與給定的字串讀音相同的字串
SQL> create table table1(xm varchar(8));
SQL> insert into table1 values(‘weather‘);
SQL> insert into table1 values(‘wether‘);
SQL> insert into table1 values(‘gao‘);


--16.TRIM(‘s‘ from ‘string‘)
LEADING 剪掉前面的字元
TRAILING 剪掉後面的字元
如果不指定,預設為空白格符


SELECT TRIM(‘Y‘ FROM ‘YOU‘) FROM DUAL;

--17: NVL(X, VALUE)
如果X是空值,返回VALUE,否則返回X

SELECT NVL(NULL, ‘2‘) FROM DUAL;

SELECT NVL(‘33‘, ‘2‘) FROM DUAL;


--18: NVL2(X, VALUE1, VALUE2)
如果X是空值,返回VALUE1, 否則返回VALUE2

SELECT NVL2(NULL, ‘3‘, ‘4‘) FROM DUAL;

--19: NANVI(X, VALUE)
如果X不是數字,那麼返回VALUE,否則返回X

SELECT NANVI(‘3DF‘, ‘34‘) FROM DUAL; --不知是否是ORACLE 11裡面出現的。
----------------------------------------------------------------------------------------------------

oracle 常用函數之 字元函數

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.