SQL字符串函數(shù)主要用于字符串操作。 下表詳述了重要的字符串函數(shù):
Name | Description |
---|---|
ASCII() | 返回最左邊字符的數(shù)值 |
BIN() | 返回參數(shù)的字符串表示形式 |
BIT_LENGTH() | 返回參數(shù)的長度(以位為單位) |
CHAR_LENGTH() | 返回參數(shù)中的字符數(shù) |
CHAR() | 返回每個傳遞的整數(shù)的字符 |
CHARACTER_LENGTH() | 和CHAR_LENGTH()相同,返回參數(shù)中的字符數(shù) |
CONCAT_WS() | 返回與separator分隔 |
CONCAT() | 返回連接的字符串 |
CONV() | 在不同數(shù)字之間轉(zhuǎn)換數(shù)字 |
ELT() | 返回索引號處的字符串 |
EXPORT_SET() | 返回一個字符串,使得對于值位中設(shè)置的每個位,您將獲得一個on字符串,并且對于每個unset位,您將得到一個off字符串 |
FIELD() | 返回后續(xù)參數(shù)中第一個參數(shù)的索引(位置) |
FIND_IN_SET() | 返回第二個參數(shù)中第一個參數(shù)的索引位置 |
FORMAT() | 返回格式為指定小數(shù)位數(shù)的數(shù)字 |
HEX() | 返回十六進(jìn)制值的字符串表示形式 |
INSERT() | 在指定位置插入一個子字符串,直到指定的字符數(shù) |
INSTR() | 返回第一次出現(xiàn)子字符串的索引 |
LCASE() | 同LOWER() |
LEFT() | 返回指定的最左邊的字符數(shù) |
LENGTH() | 返回字符串的長度(以字節(jié)為單位) |
LOAD_FILE() | 加載命名文件 |
LOCATE() | 返回第一次出現(xiàn)子字符串的位置 |
LOWER() | 以小寫返回參數(shù) |
LPAD() | 返回字符串參數(shù),用指定的字符串向左填充 |
LTRIM() | 刪除前導(dǎo)空格 |
MAKE_SET() | 返回一組逗號分隔的字符串,它們具有設(shè)置的位中的相應(yīng)位 |
MID() | 返回從指定位置開始的子字符串 |
OCT() | 返回八進(jìn)制參數(shù)的字符串表示形式 |
OCTET_LENGTH() | 同LENGTH(),返回字符串的長度(以字節(jié)為單位) |
ORD() | 如果參數(shù)的最左邊的字符是多字節(jié)字符,則返回該字符的代碼 |
POSITION() | 同LOCATE(),返回第一次出現(xiàn)子字符串的位置 |
QUOTE() | 轉(zhuǎn)義要在SQL語句中使用的參數(shù) |
REGEXP | 使用正則表達(dá)式的模式匹配 |
REPEAT() | 重復(fù)字符串指定的次數(shù) |
REPLACE() | 替換指定字符串的出現(xiàn) |
REVERSE() | 反轉(zhuǎn)字符串中的字符 |
RIGHT() | 返回指定的最右邊字符數(shù) |
RPAD() | 追加字符串指定的次數(shù) |
RTRIM() | 刪除尾隨空格 |
SOUNDEX() | 返回由四個字符組成的代碼 (SOUNDEX) 以評估兩個字符串的相似性 |
SOUNDS LIKE | 同SOUNDEX() |
SPACE() | 返回指定數(shù)目個空格的字符串 |
STRCMP() | 比較兩個字符串 |
SUBSTRING_INDEX() | 返回在分隔符的指定出現(xiàn)次數(shù)之前的字符串中的子字符串 |
SUBSTRING(), SUBSTR() | 返回指定的子字符串 |
TRIM() | 刪除前導(dǎo)和尾隨空格 |
UCASE() | 同UPPER |
UNHEX() | 將每對十六進(jìn)制數(shù)字轉(zhuǎn)換為一個字符 |
UPPER() | 轉(zhuǎn)換為大寫 |
返回字符串str的最左字符的數(shù)值。如果str是空字符串,返回0。,則返回null str為NULL。的ASCII()適用于從0到255的數(shù)字值的字符。
SQL> SELECT ASCII('2'); +---------------------------------------------------------+ | ASCII('2') | +---------------------------------------------------------+ | 50 | +---------------------------------------------------------+ 1 row in set (0.00 sec) SQL> SELECT ASCII('dx'); +---------------------------------------------------------+ | ASCII('dx') | +---------------------------------------------------------+ | 100 | +---------------------------------------------------------+ 1 row in set (0.00 sec)
返回的N,其中N是一個longlong(BIGINT)數(shù)字的二進(jìn)制值的字符串表示。這相當(dāng)于CONV(N,10,2)。,則返回null N為NULL。
SQL> SELECT BIN(12); +---------------------------------------------------------+ | BIN(12) | +---------------------------------------------------------+ | 1100 | +---------------------------------------------------------+ 1 row in set (0.00 sec)
返回位字符串str的長度。
SQL> SELECT BIT_LENGTH('text'); +---------------------------------------------------------+ | BIT_LENGTH('text') | +---------------------------------------------------------+ | 32 | +---------------------------------------------------------+ 1 row in set (0.00 sec)
CHAR()解釋每一個參數(shù)n為整數(shù)并返回由這些整數(shù)的代碼值給出的字符的字符串。NULL值被跳過。
SQL> SELECT CHAR(77,121,83,81,'76'); +---------------------------------------------------------+ | CHAR(77,121,83,81,'76') | +---------------------------------------------------------+ | MySQL | +---------------------------------------------------------+ 1 row in set (0.00 sec)
返回字符測量字符串str的長度。一個多字節(jié)字符算作一個字符。這意味著,對于包含五個二字節(jié)字符,length()返回10,而CHAR_LENGTH一個字符串()返回5。
SQL> SELECT CHAR_LENGTH("text"); +---------------------------------------------------------+ | CHAR_LENGTH("text") | +---------------------------------------------------------+ | 4 | +---------------------------------------------------------+ 1 row in set (0.00 sec)
CHARACTER_LENGTH()是CHAR_LENGTH()的同義詞。
返回從串聯(lián)參數(shù)產(chǎn)生的字符串??赡苡幸粋€或多個參數(shù)。如果所有參數(shù)都是非二進(jìn)制字符串,結(jié)果是一個非二進(jìn)制串。如果參數(shù)包括任何二進(jìn)制串,結(jié)果是一個二進(jìn)制串。一個數(shù)字參數(shù)被轉(zhuǎn)換為等值的二進(jìn)制字符串的形式; 如果要避免這種情況,你可以使用顯式類型轉(zhuǎn)換,如下面的例子:
SQL> SELECT CONCAT('My', 'S', 'QL'); +---------------------------------------------------------+ | CONCAT('My', 'S', 'QL') | +---------------------------------------------------------+ | MySQL | +---------------------------------------------------------+ 1 row in set (0.00 sec)
CONCAT_WS()表示連接具有分離器和CONCAT是一種特殊形式的()。第一個參數(shù)是的參數(shù)剩下的分隔符。分離器要連接的串之間加入。分隔符可以是一個字符串,如可以的參數(shù)的其余部分。如果隔板是NULL,則結(jié)果為NULL。
SQL> SELECT CONCAT_WS(',','First name','Last Name' ); +---------------------------------------------------------+ | CONCAT_WS(',','First name','Last Name' ) | +---------------------------------------------------------+ | First name,Last Name | +---------------------------------------------------------+ 1 row in set (0.00 sec)
不同數(shù)量的堿基間轉(zhuǎn)換數(shù)字。返回數(shù)N的字符串表示,從from_base基轉(zhuǎn)換為to_base。返回NULL如果任何參數(shù)是NULL。參數(shù)N被解釋為一個整數(shù),但也可以指定為一個整數(shù)或字符串。最小基本為2和最大堿是36。如果to_base是一個負(fù)數(shù),N被看作一個帶符號的數(shù)。否則,N被當(dāng)作無符號。CONV()可與64位精度。
SQL> SELECT CONV('a',16,2); +---------------------------------------------------------+ | CONV('a',16,2) | +---------------------------------------------------------+ | 1010 | +---------------------------------------------------------+ 1 row in set (0.00 sec)
返回STR1如果N = 1,STR2如果N = 2,等等。,則返回null N大于參數(shù)的數(shù)目大于小于1或。ELT()是FIELD的補(bǔ)()。
SQL> SELECT ELT(1, 'ej', 'Heja', 'hej', 'foo'); +---------------------------------------------------------+ | ELT(1, 'ej', 'Heja', 'hej', 'foo') | +---------------------------------------------------------+ | ej | +---------------------------------------------------------+ 1 row in set (0.00 sec)
返回這樣的字符串,每一點(diǎn)的價值位設(shè)置,你會得到一個關(guān)于字符串,并在值未設(shè)定每一位,你會得到一個關(guān)閉的字符串。在比特位被從右到左(從低階到高階比特)審查。字符串被添加到結(jié)果從左至右,由分離字符串分開(默認(rèn)為逗號字符。,)。檢查位的數(shù)目是由NUMBER_OF_BITS(默認(rèn)為64)給出。
SQL> SELECT EXPORT_SET(5,'Y','N',',',4); +---------------------------------------------------------+ | EXPORT_SET(5,'Y','N',',',4) | +---------------------------------------------------------+ | Y,N,Y,N | +---------------------------------------------------------+ 1 row in set (0.00 sec)
返回其中str1,STR2,STR3,...名單海峽指數(shù)(位置從1開始)。如果找不到海峽則返回0。
SQL> SELECT FIELD('ej', 'Hej', 'ej', 'Heja', 'hej', 'foo'); +---------------------------------------------------------+ | FIELD('ej', 'Hej', 'ej', 'Heja', 'hej', 'foo') | +---------------------------------------------------------+ | 2 | +---------------------------------------------------------+ 1 row in set (0.00 sec)
如果字符串str是在由N-串的字符串列表strlist返回的1到N的范圍內(nèi)的值。
SQL> SELECT FIND_IN_SET('b','a,b,c,d'); +---------------------------------------------------------+ | SELECT FIND_IN_SET('b','a,b,c,d') | +---------------------------------------------------------+ | 2 | +---------------------------------------------------------+ 1 row in set (0.00 sec)
格式數(shù)X像'#,###,###。##',格式四舍五入至小數(shù)點(diǎn)后D位,而返回結(jié)果為一個字符串。如果D為0,結(jié)果沒有小數(shù)點(diǎn)或小數(shù)部分。
SQL> SELECT FORMAT(12332.123456, 4); +---------------------------------------------------------+ | FORMAT(12332.123456, 4) | +---------------------------------------------------------+ | 12,332.1235 | +---------------------------------------------------------+ 1 row in set (0.00 sec)
如果N_or_S是一個數(shù)字,返回N,其中N是一個longlong(BIGINT)數(shù)字的十六進(jìn)制值的字符串表示。這相當(dāng)于CONV(N,10,16)。
如果N_or_S是一個字符串,返回N_or_S其中N_or_S每個字符轉(zhuǎn)換為兩個十六進(jìn)制數(shù)字的十六進(jìn)制字符串表示。
SQL> SELECT HEX(255); +---------------------------------------------------------+ | HEX(255) | +---------------------------------------------------------+ | FF | +---------------------------------------------------------+ 1 row in set (0.00 sec) SQL> SELECT 0x616263; +---------------------------------------------------------+ | 0x616263 | +---------------------------------------------------------+ | abc | +---------------------------------------------------------+ 1 row in set (0.00 sec)
返回字符串str,在位置POS和len字符長的字符串替換中newstr開頭的字符串。如果pos不是字符串的長度內(nèi)返回原始字符串。取代從位置pos串的其余部分如果len不串的其余部分的長度范圍內(nèi)。返回NULL如果任何參數(shù)是NULL。
SQL> SELECT INSERT('Quadratic', 3, 4, 'What'); +---------------------------------------------------------+ | INSERT('Quadratic', 3, 4, 'What') | +---------------------------------------------------------+ | QuWhattic | +---------------------------------------------------------+ 1 row in set (0.00 sec)
返回字符串str子串SUBSTR中第一次出現(xiàn)的位置。這是一樣的本地(兩個參數(shù)的形式),除此以外,參數(shù)的順序是相反的。
SQL> SELECT INSTR('foobarbar', 'bar'); +---------------------------------------------------------+ | INSTR('foobarbar', 'bar') | +---------------------------------------------------------+ | 4 | +---------------------------------------------------------+ 1 row in set (0.00 sec)
LCASE()是較低的()的同義詞。
如果任何參數(shù)是NULL,返回從字符串str,或NULL最左邊的len個字符。
SQL> SELECT LEFT('foobarbar', 5); +---------------------------------------------------------+ | LEFT('foobarbar', 5) | +---------------------------------------------------------+ | fooba | +---------------------------------------------------------+ 1 row in set (0.00 sec)
返回字符串str的長度,以字節(jié)為單位。一個多字節(jié)字符算作多字節(jié)。這意味著,對于包含五個二字節(jié)字符,length()返回10,而CHAR_LENGTH一個字符串()返回5。
SQL> SELECT LENGTH('text'); +---------------------------------------------------------+ | LENGTH('text') | +---------------------------------------------------------+ | 4 | +---------------------------------------------------------+ 1 row in set (0.00 sec)
讀取該文件,作為一個字符串返回文件內(nèi)容。要使用此功能,該文件必須位于服務(wù)器主機(jī)上,則必須指定完整路徑的文件,你必須有FILE權(quán)限。該文件必須由所有它的尺寸小于max_allowed_pa??cket個字節(jié)可讀。
如果該文件不存在或無法讀取,因?yàn)樯鲜鰲l件之一不滿足,則函數(shù)返回NULL。
由于SQL 5.0.19,即給定為文字字符串文件名的character_set_filesystem系統(tǒng)變量控制的解釋。
SQL> UPDATE table_test -> SET blob_col=LOAD_FILE('/tmp/picture') -> WHERE id=1; ...........................................................
第一種語法返回字符串str子串SUBSTR中第一次出現(xiàn)的位置。第二個語法返回字符串str子串SUBSTR位置pos處開始第一次出現(xiàn)的位置。如果SUBSTR不是str中,則返回0。
SQL> SELECT LOCATE('bar', 'foobarbar'); +---------------------------------------------------------+ | LOCATE('bar', 'foobarbar') | +---------------------------------------------------------+ | 4 | +---------------------------------------------------------+ 1 row in set (0.00 sec)
返回改為根據(jù)當(dāng)前字符集映射到小寫字母的字符串str。
SQL> SELECT LOWER('QUADRATICALLY'); +---------------------------------------------------------+ | LOWER('QUADRATICALLY') | +---------------------------------------------------------+ | quadratically | +---------------------------------------------------------+ 1 row in set (0.00 sec)
返回字符串str,左填充用字符串padstr填補(bǔ)到len字符長度。如果str的長度大于len,則返回值被縮短至len個字符。
SQL> SELECT LPAD('hi',4,'??'); +---------------------------------------------------------+ | LPAD('hi',4,'??') | +---------------------------------------------------------+ | ??hi | +---------------------------------------------------------+ 1 row in set (0.00 sec)
返回刪除了前導(dǎo)空格字符的字符串str。
SQL> SELECT LTRIM(' barbar'); +---------------------------------------------------------+ | LTRIM(' barbar') | +---------------------------------------------------------+ | barbar | +---------------------------------------------------------+ 1 row in set (0.00 sec)
返回一組值(含分隔子字符串,個字符),包括那些在設(shè)置位的相應(yīng)位的字符串。STR1對應(yīng)于位0,STR2到第1位,依此類推。str1中,str2的NULL值,......不添加到結(jié)果。
SQL> SELECT MAKE_SET(1,'a','b','c'); +---------------------------------------------------------+ | MAKE_SET(1,'a','b','c') | +---------------------------------------------------------+ | a | +---------------------------------------------------------+ 1 row in set (0.00 sec)
MID(STR,POS,LEN)是SUBSTRING的同義詞(STR,POS,LEN)。
返回N,其中N是一個longlong(BIGINT)數(shù)字八進(jìn)制值的字符串表示。這相當(dāng)于CONV(N,10,8)。,則返回null N為NULL。
SQL> SELECT OCT(12); +---------------------------------------------------------+ | OCT(12) | +---------------------------------------------------------+ | 14 | +---------------------------------------------------------+ 1 row in set (0.00 sec)
OCTET_LENGTH()是LENGTH()的同義詞。
如果字符串str的最左邊的字符是一個多字節(jié)字符,返回該字符,使用此公式其組成字節(jié)的數(shù)值計算的代碼:
(1st byte code) + (2nd byte code . 256) + (3rd byte code . 2562) ...
如果最左邊的字符不是一個多字節(jié)字符,ORD()返回相同的值作為ASCII()函數(shù)。
SQL> SELECT ORD('2'); +---------------------------------------------------------+ | ORD('2') | +---------------------------------------------------------+ | 50 | +---------------------------------------------------------+ 1 row in set (0.00 sec)
POSITION(SUBSTR str中)可以找到同義詞(SUBSTR,STR)。
引號的字符串,以產(chǎn)生可以用作SQL語句中正確轉(zhuǎn)義數(shù)據(jù)值的結(jié)果。該字符串返回單引號和單引號('),反斜線('\'),ASCII NUL和Control-Z前面有反斜杠的每個實(shí)例封閉。如果參數(shù)為NULL,則返回值是不封閉單引號的單詞“NULL”。
SQL> SELECT QUOTE('Don\'t!'); +---------------------------------------------------------+ | QUOTE('Don\'t!') | +---------------------------------------------------------+ | 'Don\'t!' | +---------------------------------------------------------+ 1 row in set (0.00 sec)
注:請檢查您的安裝有任何錯誤使用此功能,那么不要使用此功能。
這個函數(shù)執(zhí)行對圖案expr的模式匹配。返回1如果expr匹配pat; 否則返回0。如果expr或拍拍為NULL,則結(jié)果為NULL。REGEXP不區(qū)分大小寫,與二進(jìn)制字符串使用時除外。
SQL> SELECT 'ABCDEF' REGEXP 'A%C%%'; +---------------------------------------------------------+ | 'ABCDEF' REGEXP 'A%C%%' | +---------------------------------------------------------+ | 0 | +---------------------------------------------------------+ 1 row in set (0.00 sec)
另一個例子是:
SQL> SELECT 'ABCDE' REGEXP '.*'; +---------------------------------------------------------+ | 'ABCDE' REGEXP '.*' | +---------------------------------------------------------+ | 1 | +---------------------------------------------------------+ 1 row in set (0.00 sec)
讓我們看一個例子:
SQL> SELECT 'new*\n*line' REGEXP 'new\\*.\\*line'; +---------------------------------------------------------+ | 'new*\n*line' REGEXP 'new\\*.\\*line' | +---------------------------------------------------------+ | 1 | +---------------------------------------------------------+ 1 row in set (0.00 sec)
返回由字符串str重復(fù)的次數(shù)的字符串。如果計數(shù)小于1,返回一個空字符串。如果str或計數(shù)為NULL,則返回NULL。
SQL> SELECT REPEAT('SQL', 3); +---------------------------------------------------------+ | REPEAT('SQL', 3) | +---------------------------------------------------------+ | SQLSQLSQL | +---------------------------------------------------------+ 1 row in set (0.00 sec)
返回與字符串的所有出現(xiàn)由字符串to_str from_str均被替換字符串str。REPLACE()的from_str均被搜索時進(jìn)行區(qū)分大小寫的匹配。
SQL> SELECT REPLACE('www.mysql.com', 'w', 'Ww'); +---------------------------------------------------------+ | REPLACE('www.mysql.com', 'w', 'Ww') | +---------------------------------------------------------+ | WwWwWw.mysql.com | +---------------------------------------------------------+ 1 row in set (0.00 sec)
返回并反轉(zhuǎn)字符順序的字符串str。
SQL> SELECT REVERSE('abcd'); +---------------------------------------------------------+ | REVERSE('abcd') | +---------------------------------------------------------+ | dcba | +---------------------------------------------------------+ 1 row in set (0.00 sec)
如果任何參數(shù)是NULL,返回從字符串str,或NULL最右邊的len個字符。
SQL> SELECT RIGHT('foobarbar', 4); +---------------------------------------------------------+ | RIGHT('foobarbar', 4) | +---------------------------------------------------------+ | rbar | +---------------------------------------------------------+ 1 row in set (0.00 sec)
返回字符串str,右側(cè)填充字符串padstr填補(bǔ)到len字符長度。如果str的長度大于len,則返回值被縮短至len個字符。
SQL> SELECT RPAD('hi',5,'?'); +---------------------------------------------------------+ | RPAD('hi',5,'?') | +---------------------------------------------------------+ | hi??? | +---------------------------------------------------------+ 1 row in set (0.00 sec)
返回尾隨去掉空格字符的字符串str。
SQL> SELECT RTRIM('barbar '); +---------------------------------------------------------+ | RTRIM('barbar ') | +---------------------------------------------------------+ | barbar | +---------------------------------------------------------+ 1 row in set (0.00 sec)
返回從STR一個同音字符串。兩個字符串聽起來差不多了應(yīng)該有相同的同音字符串。一個標(biāo)準(zhǔn)的soundex字符串是四個字符長,但SOUNDEX()函數(shù)返回一個任意長的字符串。您可以使用SUBSTRING()的結(jié)果得到一個標(biāo)準(zhǔn)的同音字符串。在str中所有非字母字符將被忽略。在AZ范圍之外的所有國際字母符號被視為元音字母。
SQL> SELECT SOUNDEX('Hello'); +---------------------------------------------------------+ | SOUNDEX('Hello') | +---------------------------------------------------------+ | H400 | +---------------------------------------------------------+ 1 row in set (0.00 sec)
這是相同的SOUNDEX(表達(dá)式1)= SOUNDEX(表達(dá)式2)。
返回由N空格字符的字符串。
SQL> SELECT SPACE(6); +---------------------------------------------------------+ | SELECT SPACE(6) | +---------------------------------------------------------+ | ' ' | +---------------------------------------------------------+ 1 row in set (0.00 sec)
比較兩個字符串,返回0,如果這兩個字符串相等,則返回-1,如果第一個參數(shù)是根據(jù)當(dāng)前的排序順序,否則,返回1小于第二個。
SQL> SELECT STRCMP('MOHD', 'MOHD'); +---------------------------------------------------------+ | STRCMP('MOHD', 'MOHD') | +---------------------------------------------------------+ | 0 | +---------------------------------------------------------+ 1 row in set (0.00 sec)
另一個例子是:
SQL> SELECT STRCMP('AMOHD', 'MOHD'); +---------------------------------------------------------+ | STRCMP('AMOHD', 'MOHD') | +---------------------------------------------------------+ | -1 | +---------------------------------------------------------+ 1 row in set (0.00 sec)
讓我們看一個例子:
SQL> SELECT STRCMP('MOHD', 'AMOHD'); +---------------------------------------------------------+ | STRCMP('MOHD', 'AMOHD') | +---------------------------------------------------------+ | 1 | +---------------------------------------------------------+ 1 row in set (0.00 sec)
沒有l(wèi)en參數(shù)的格式從字符串str位置pos處開始返回一個字符串。用len參數(shù)的格式從字符串str長返回一個字符串len個字符,從位置pos開始。從使用的形式是標(biāo)準(zhǔn)的SQL語法。另外,也可以用于POS負(fù)值。在這種情況下,串的開始是從字符串的末尾,而不是一開始POS字符。負(fù)值可以被用于在任何的該函數(shù)的形式POS。
SQL> SELECT SUBSTRING('Quadratically',5); +---------------------------------------------------------+ | SSUBSTRING('Quadratically',5) | +---------------------------------------------------------+ | ratically | +---------------------------------------------------------+ 1 row in set (0.00 sec) SQL> SELECT SUBSTRING('foobarbar' FROM 4); +---------------------------------------------------------+ | SUBSTRING('foobarbar' FROM 4) | +---------------------------------------------------------+ | barbar | +---------------------------------------------------------+ 1 row in set (0.00 sec) SQL> SELECT SUBSTRING('Quadratically',5,6); +---------------------------------------------------------+ | SUBSTRING('Quadratically',5,6) | +---------------------------------------------------------+ | ratica | +---------------------------------------------------------+ 1 row in set (0.00 sec)
返回從字符串str分隔符delim中的計數(shù)發(fā)生前的子字符串。如果計數(shù)是正的,則返回一切最終定界符(從左邊算起)的左側(cè)。如果count是負(fù)數(shù),則返回一切最終定界符(從右邊開始計數(shù))的權(quán)利。SUBSTRING_INDEX()為DELIM搜索時進(jìn)行區(qū)分大小寫的匹配。
SQL> SELECT SUBSTRING_INDEX('www.mysql.com', '.', 2); +---------------------------------------------------------+ | SUBSTRING_INDEX('www.mysql.com', '.', 2) | +---------------------------------------------------------+ | www.mysql | +---------------------------------------------------------+ 1 row in set (0.00 sec)
返回刪除了所有remstr前綴或后綴字符串str。如果兩個,領(lǐng)導(dǎo),或尾隨給出沒有說明符,則假定BOTH。remstr為可任選的,并且如果未指定,空格被刪除。
SQL> SELECT TRIM(' bar '); +---------------------------------------------------------+ | TRIM(' bar ') | +---------------------------------------------------------+ | bar | +---------------------------------------------------------+ 1 row in set (0.00 sec) SQL> SELECT TRIM(LEADING 'x' FROM 'xxxbarxxx'); +---------------------------------------------------------+ | TRIM(LEADING 'x' FROM 'xxxbarxxx') | +---------------------------------------------------------+ | barxxx | +---------------------------------------------------------+ 1 row in set (0.00 sec) SQL> SELECT TRIM(BOTH 'x' FROM 'xxxbarxxx'); +---------------------------------------------------------+ | TRIM(BOTH 'x' FROM 'xxxbarxxx') | +---------------------------------------------------------+ | bar | +---------------------------------------------------------+ 1 row in set (0.00 sec) SQL> SELECT TRIM(TRAILING 'xyz' FROM 'barxxyz'); +---------------------------------------------------------+ | TRIM(TRAILING 'xyz' FROM 'barxxyz') | +---------------------------------------------------------+ | barx | +---------------------------------------------------------+ 1 row in set (0.00 sec)
UCASE()是UPPER()的同義詞。
執(zhí)行HEX(STR)的逆運(yùn)算。也就是說,它解釋每對十六進(jìn)制數(shù)字的參數(shù)作為數(shù)字,并將其轉(zhuǎn)換到由數(shù)字表示的字符。所得字符被返回為二進(jìn)制字符串。
SQL> SELECT UNHEX('4D7953514C'); +---------------------------------------------------------+ | UNHEX('4D7953514C') | +---------------------------------------------------------+ | SQL | +---------------------------------------------------------+ 1 row in set (0.00 sec)
在參數(shù)字符串中的字符必須是合法的十六進(jìn)制數(shù)字:'0'..'9','A'..'F','一'..'F'。如果UNHEX()遇到在參數(shù)任何非十六進(jìn)制數(shù)字,它返回NULL。
返回改為根據(jù)當(dāng)前字符集映射為大寫的所有字符的字符串str。
SQL> SELECT UPPER('Allah-hus-samad'); +---------------------------------------------------------+ | UPPER('Allah-hus-samad') | +---------------------------------------------------------+ | ALLAH-HUS-SAMAD | +---------------------------------------------------------+ 1 row in set (0.00 sec)
更多建議: