程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> MySQL中數據類型相干的優化方法

MySQL中數據類型相干的優化方法

編輯:MySQL綜合教程

MySQL中數據類型相干的優化方法。本站提示廣大學習愛好者:(MySQL中數據類型相干的優化方法)文章只能為提供參考,不一定能成為您想要的結果。以下是MySQL中數據類型相干的優化方法正文


Oracle TRIM函數是很罕見的函數,上面對Oracle TRIM函數的語法作了詳實的論述解釋,願望可讓您對Oracle TRIM函數有更深的熟悉。

假如提到Oracle TRIM函數,最簡略的功效就是應用它往來來往除字符串的行首和行尾的空格,這個功效也是年夜家應用頻率最高的一種。
但是Oracle TRIM函數實際上是具有刪除“隨意率性指定”字符的功效,弗成謂不牛。我們來一次體驗之旅。

1.先看一下Oracle TRIM函數的完全語法描寫

TRIM([ { { LEADING | TRAILING | BOTH }
[ trim_character ]
| trim_character
}
FROM
]
trim_source
)

以上語法引自於Oracle 10gR2官方文檔:http://download.oracle.com/docs/ ... 0/img_text/trim.htm
單從這個語法界說上我們便可以看出,小小的Oracle TRIM函數包含了更多可定制的功效。逐個展現,供參考。

2.最簡略的用法開端
不應用任何參數:
[email protected]> select trim (' DWEYE ') "TRIM e.g." from dual;

TRIM e.g
--------
DWEYE

這也是最多見的一種應用辦法,都應用默許的參數,默許情形下TRIM會同時刪除字符串前後湧現的空格。

3.其實第一種經常使用的辦法同等於上面帶有“BOTH”參數的寫法
[email protected]> select trim (both from ' DWEYE ') "TRIM e.g." from dual;

TRIM e.g
--------
DWEYE

“BOTH”參數表現同時去除字符串前後所指定的內容(默許情形下刪除空格)。

4.既然試用了BOTH參數,我們再看一下“TRAILING”和“LEADING”參數後果

[email protected]> select trim (trailing from ' DWEYE ') "TRIM e.g." from dual;

TRIM e.g.
------------
DWEYE

[email protected]> select trim (leading from ' DWEYE ') "TRIM e.g." from dual;

TRIM e.g.
------------
DWEYE

可見,應用“TRAILING”參數可以完成字符串尾部空格的刪除功效;而“LEADING”參數正好相反,完成字符串頭部空格的刪除功效。
也就是說,應用“TRAILING”和“LEADING”參數可以指定空格的刪除地位。

5.“trim_character”參數袍笏登場

這個參數轉變了“刪除空格”的默許行動。
假如想要刪除字符串'xxxxDWEYExxxx'前後湧現的“x”,“trim_character”參數就派上用處了。
[email protected]> select trim ('x' from 'xxxxDWEYExxxx') "TRIM e.g." from dual;

TRIM e.g
--------
DWEYE

合營“BOTH”、“TRAILING”和“LEADING”三個參數應用後果以下,與之前演示相似。看成果,不贅述。
[email protected]> select trim (both 'x' from 'xxxxDWEYExxxx') "TRIM e.g." from dual;

TRIM e.g
--------
DWEYE

[email protected]> select trim (trailing 'x' from 'xxxxDWEYExxxx') "TRIM e.g." from dual;

TRIM e.g.
------------
xxxxDWEYE

[email protected]> select trim (leading 'x' from 'xxxxDWEYExxxx') "TRIM e.g." from dual;

TRIM e.g.
------------
DWEYExxxx

6.須要留意的處所

這裡的“trim_character”參數只許可包括一個字符,不支撐多字符。
報錯信息以下:
[email protected]> select trim (leading 'xy' from 'xyxxDWEYExyyx') "TRIM e.g." from dual;
select trim (leading 'xy' from 'xyxxDWEYExyyx') "TRIM e.g." from dual
*
ERROR at line 1:
ORA-30001: trim set should have only one character

既然TRIM不克不及知足我們刪除只剩“DWEYE”字符串的請求,有麼有其他手腕呢?of course有。我們應用RTRIM和LTRIM“連環拳”完成這個義務。
1)應用RTRIM
[email protected]> select rtrim('xyxxDWEYExyyx','xy') "e.g." from dual;

e.g.
------------
xyxxDWEYE

2)應用LTRIM
[email protected]> select ltrim('xyxxDWEYExyyx','xy') "e.g." from dual;

e.g.
------------
DWEYExyyx

3)結合應用RTRIM和LTRIM函數到達我們的目標
[email protected]> select ltrim(rtrim('xyxxDWEYExyyx','xy'),'xy') "e.g." from dual;

e.g.
--------
DWEYE

應用RTRIM和LTRIM函數時的留意事項:“xy”不表現全部“xy”字符串停止婚配,而是發明隨意率性的字符“x”或字符“y”均做刪除操作。

7.小結

在感觸感染Oracle函數帶來方便的同時,建議對每個經常使用函數都追根究底地探討一下,或許在測驗考試以後您會發明:哦,本來年夜家常常用到這些辦法只是其真實功效的九牛一毫。

以下是其它網友的彌補:

如 trim('字符1' from '字符串2') ,字符1只能是單個字符。

1. trim()刪除字符串雙方的空格。
2. ltrim()刪除字符串右邊的空格。
3. rtrim()刪除字符串左邊的空格。
4. trim('字符1' from '字符串2') 分離從字符2串的雙方開端,刪除指定的字符1。
5. trim([leading | trailing | both] trim_char from string) 從字符串String中刪除指定的字符trim_char。
leading:從字符串的頭開端刪除。
trailing:從字符串的尾部開端刪除。
borth:從字符串的雙方刪除。
6. tim()只能刪除半角空格。

For example:
trim(' tech ') would return 'tech';
trim(' ' from ' tech ') would return 'tech';
trim(leading '0' from '000123') would return '123';
trim(trailing '1' from 'Tech1') would return 'Tech';
trim(both '1' from '123Tech111') would return '23Tech';

oracle中的trim函數

Oracle中的trim函數是用來刪除給定字符串或許給定命字中的頭部或許尾部的給定字符。
trim函數具有以下的情勢

trim([leading/trailing/both][婚配字符串或數值][from][須要被處置的字符串或數值])

這裡假如指清楚明了leading表現從刪除頭部婚配的字符串,假如指清楚明了trailing表現從刪除尾部婚配的字符串,假如指清楚明了both,或許不指明任何地位,則兩頭都將被刪除

假如不指明任何婚配字符串或數值則以為是空格,即刪除後面或許前面的空格。

trim函數前往的類型是varchar2

上面是一些例子:

截去了數字7500的前面的兩個0

SQL> select trim(0 from 7500) from dual;

TRIM

—-

75

上面的例子截去了' 中秋八月中'前後的兩個'中'字

SQL> select trim('中‘ from ‘中秋八月中‘) as 詩 from dual;



——————

秋八月


上面的例子截去了' 子夜二更半'後面的一個'半'字

SQL> select trim(leading ‘半‘ from ‘子夜二更半‘) as 詩 from dual;



————————

夜二更半

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved