本文將演示如下4個經常使用字符串函數:mysql
CANCAT(S1,S2,…Sn) sql |
鏈接S1,S2,…Sn爲一個字符串函數 |
INSERT(str,x,y,instr) code |
將字符串str從第x位置開始,y個字符長的子串替換爲字符串instrblog |
LOWER(str) 圖片 |
將字符串str中全部字符變爲小寫字符串 |
UPPER(str) get |
將字符串str中全部字符變爲大寫table |
n CANCAT(S1,S2,…Sn)函數:把傳入的參數鏈接成爲一個字符串。下面的例子把「aaa」、「bbb」、「ccc」3個字符串鏈接成了一個字符串「aaabbbccc」。另外,任何字符串與NULL進行鏈接的結果都將是NULL。select
示例1:
mysql> select concat('aaa','bbb','ccc') ,concat('aaa',null); +---------------------------+--------------------+ | concat('aaa','bbb','ccc') | concat('aaa',null) | +---------------------------+--------------------+ | aaabbbccc | NULL | +---------------------------+--------------------+ 1 row in set (0.05 sec) |
n INSERT(str ,x,y,instr)函數:將字符串str從第x位置開始,y個字符長的子串替換爲字符串instr。下面的例子把字符串「beijing2008you」中的從第12個字符開始之後的3個字符替換成「me」。
示例:
mysql> select INSERT('beijing2008you',12,3, 'me') ; +-------------------------------------+ | INSERT('beijing2008you',12,3, 'me') | +-------------------------------------+ | beijing2008me | +-------------------------------------+ 1 row in set (0.00 sec) |
n LOWER(str)和UPPER(str)函數:把字符串轉換成小寫或大寫。在字符串比較中,一般要將比較的字符串所有轉換爲大寫或者小寫,以下例所示:
示例:
mysql> select LOWER('BEIJING2008'), UPPER('beijing2008'); +----------------------+----------------------+ | LOWER('BEIJING2008') | UPPER('beijing2008') | +----------------------+----------------------+ | beijing2008 | BEIJING2008 | +----------------------+----------------------+ row in set (0.00 sec) |
n LEFT(str,x)和 RIGHT(str,x)函數:分別返回字符串最左邊的x個字符和最右邊的x個字符。若是第二個參數是NULL,那麼將不返回任何字符串。下例中顯示了對字符串「beijing2008」應用函數後的結果。
示例:
mysql> SELECT LEFT('beijing2008',7),LEFT('beijing',null),RIGHT('beijing2008',4); +-----------------------+----------------------+------------------------+ | LEFT('beijing2008',7) | LEFT('beijing',null) | RIGHT('beijing2008',4) | +-----------------------+----------------------+------------------------+ | beijing | | 2008 | +-----------------------+----------------------+------------------------+ 1 row in set (0.00 sec) |