字符串操作在程序設計中是非常重要的組成部分,而MySQL數據庫中的字符串操作卻相當簡單
需要注意的是:下面所有的函數只是將修改後的結果當查詢返回,均不對原數據做出改變
選出指定數量字符
復制代碼 代碼如下:
mysql> SELECT RIGHT('nihao',3);
+------------------+
| RIGHT('nihao',3) |
+------------------+
| hao |
+------------------+
row in set (0.00 sec)
這裡的RIGHT()函數代表從字符串中選定從右往左數的三個字符
與此類似,還有LEFT()函數
SUBSTRING_INDEX截取字符串
復制代碼 代碼如下:
mysql> SELECT SUBSTRING_INDEX('HH,MM,SS',',',2);
+-----------------------------------+
| SUBSTRING_INDEX('HH,MM,SS',',',2) |
+-----------------------------------+
| HH,MM |
+-----------------------------------+
row in set (0.00 sec)
此函數內部的第一個參數代表需要截取的內容,第二個參數代表按什麼截取
最後一個是截取到第幾個,1是截取到第一個逗號,2是截取到第二個
SUBSTRING截取字符串
復制代碼 代碼如下:
mysql> SELECT SUBSTRING('helloworld',1,5);
+-----------------------------+
| SUBSTRING('helloworld',1,5) |
+-----------------------------+
| hello |
+-----------------------------+
row in set (0.00 sec)
此處截取字符串中1~5的內容
UPPER字符串改大寫
復制代碼 代碼如下:
mysql> SELECT UPPER('hello');
+----------------+
| UPPER('hello') |
+----------------+
| HELLO |
+----------------+
row in set (0.00 sec)
LOWER字符串改小寫
復制代碼 代碼如下:
mysql> SELECT LOWER('HELLO');
+----------------+
| LOWER('HELLO') |
+----------------+
| hello |
+----------------+
row in set (0.00 sec)
REVERSE反轉字符串
復制代碼 代碼如下:
mysql> SELECT REVERSE('hello');
+------------------+
| REVERSE('hello') |
+------------------+
| olleh |
+------------------+
row in set (0.00 sec)
LTRIM清除左邊多余空格
復制代碼 代碼如下:
mysql> SELECT LTRIM(' hello ');
+-----------------------+
| LTRIM(' hello ') |
+-----------------------+
| hello |
+-----------------------+
row in set (0.00 sec)
此外還有RTRIM清除右邊空格,TRIM清除兩邊全部空格
LENGTH返回字符串中的字符數量
復制代碼 代碼如下:
mysql> SELECT LENGTH('helo');
+----------------+
| LENGTH('helo') |
+----------------+
| 4 |
+----------------+
row in set (0.00 sec)