資料庫基本函式 字元函式(Oracle)

2021-08-31 20:37:00 字數 3812 閱讀 4284

一、字元函式

1、ascii()

str 是字串,返回str 第乙個字母的ascii碼,它的逆函式是chr(),例如:

select ascii ('a ') big_a , ascii ('z ') big_z

from

emp ;

返回結果:

big_a    big_z

65          122

2、chr()[nchar_cs]

i是乙個數字,函式返回十進位制表示的字元,例如

select chr (65 ), chr (122 ), chr (223 ) from

emp ;

返回結果:

chr65    chr122    chr223

a            z               b

3、concat(str1 , str2 )

其中str1 、str2 均為字串,函式將str2 連線到str1 的後面,如果str1 為null

,則返回str2 ;如果str2 為null

則返回str1 ;如果str1 、str2 都為null

,則返回null

。它和操作符|| 返回的結果相同。例如:

select concat ('slobo ', 'svoboda') username

from

dual ;

返回結果:

username

slobo svoboda

4、initcap(str )

str 為字串,函式將每個單詞的第乙個字母大寫,其他字母小寫返回;單詞由空格、控制字元、標點符號限制。例如:

select initcat ('veni ,vedi ,vici ') ceasar

from

dual ;

返回結果:

ceasar

veni,vedi,vici

5、instr(str1 , [str2 , [, j ]])

str1 、str2 均為字串,i 、j 為整數;函式返回str2 在str1 中第i 次出現的位置,搜尋從str1 的第j 個字元開始。當沒有發現需要的字元時返回0,如果i 為負數,那麼搜尋將從右到左進行,但是位置的計算還是從左道右,i 和j 的預設值為1。例如:

select instr('mississippi ', 'i ', 3 , 3 ) from

dual ;

返回結果:

instr('mississippi', 'i', 3, 3)11

再例如:

select instr ('mississippi ', 'i ', -2 , 3 ) from

dual ;

返回結果:

instr('mississippi', 'i', -2, 3)2

6、instrb(str1 , [str2 , [, j ]])

instr()函式一樣,只是其返回的是位元組,對於單位元組instrb()等於instr()。

7、length(str )

str 為字串,返回str 的長度,如果str 為null

,那麼將返回null

值。例如:

select length ('ipso facto ') ergo

from

dual ;

返回結果:

ergo10

8、lengthb(str )

length()一樣,只是其返回的是位元組長度。

9、lower(c )

返回c 的小寫字元,經常出現在where 子串中。例如:

select lower (colorname ) from

itemdetail

where lower (colorname ) like '%white %';

返回結果:

colorname

winterwhite

10、lpad(str1 , [, str2 ])

str1 、str2 均為字串,i 為整數。在str1 的左側用str2 字串補足致長度i ,可多次重複,如果i 小於str1 的長度,那麼只返回i 長的str1 字串,其他的將被截去。str2 的預設值為單空格,參見rpad()。

11、ltrim(str1 , str2 )

把str1 中最左邊的字元去掉,使其第乙個字元不在str2 中;如果沒有str2 ,那麼str1 就不會改變。例如:

select ltrim ('mississippi ', 'mis ') from

dual ;

返回結果:

ltrppi

12、rpad(str1 , [, str2 ])

在str1 的右側用str2 字串補足足致長度i ,可多次重複;如果i 小於str1 的長度,那麼只返回i 長得str1 字元,其他將被截去。str2 的預設值為單空格,其他與lpad()相似。

13、rtrim(str1 , str2 )

把str1 中最右邊的字元去掉,使其最後乙個字元不在str2 中;如果沒有str2 ,那麼str1 就不會改變。與ltrim()相似。

14、replace(str1 [, str2 [, str3 ]])

str1 、str2 、str3 均為字串,函式用str3 代替出現在str1 中的str2 後返回。例如:

select replace ('uptown ', 'up ', 'down ') from

dual ;

返回結果:

replace

downtown

15、substr(str, [, j])

str為字串,i、j為整數,從str的第i位開始返回長度為j的子字串,如果j為空砸直到串的尾部。

16、substrb(str , [, j ])

substr()大致相同,只是i 、j 是以位元組計算。

17、soundex(str)

返回與str發音相似的詞。

18、translate(str1 , str2 , str3 )

將str1 、str2 中相同的字元以str3 代替。

19、trim([[ trim_character ] | trim_character } from] str )

從字串str 中刪除指定的字元trim_character 。

leading :從字串的頭開始刪除。

trailing :從字串的尾部開始刪除。

both :從字串的兩邊刪除。

20、upper(str )

返回str 的大寫,常出現在where 子串中。

資料庫常用函式 字元函式

對錶中的字元型字段可以進行操作 一 計算字元的長度 格式 length string 使用 select length string from 表名1 二 全部轉化為小寫 格式 lower string 使用 select lower string from 表名1 三 全部轉化為大寫 格式 upp...

資料庫基本函式 數字函式(Oracle)

一 數字函式 數字函式運算元字資料,執行數學和算術運算。所有函式都是有數字引數並返回數字值。所有三角函式的運算元和值都是弧度而不是角度,oracle沒有提供內建的弧度和角度的轉換函式。1 abs n 返回n 的絕對值。2 acos n 反余弦函式,返回 1 1之間的數,n 表示弧度。3 asin n...

資料庫常用函式 數字函式

對錶中的數字型字段可以進行操作 一 求絕度值 格式 select abs n 二 求平方 mysql不支援 格式 select square n 三 求平方根 格式 select sqrt n 四 求對數 1.自然對數 格式 select log n 2.以十為底 格式 select log10 n...