當前位置:
首頁 > 知識 > MySQL字元串函數

MySQL字元串函數

前言

雖然每種資料庫軟體都支持SQL語句,但是每種資料庫卻擁有各自所支持的函數。如果想使用資料庫軟體,除了需要會使用SQL語句外,還需要掌握函數。MySQL中字元串函數主要用來處理字元串。

概覽

函數作用CONCAT(str1,str2….,strn)連接字元串str1、str2、……、strn為一個完整字元串INSERT(str,x,y,instr)將字元串從第x位置開始,y個字元常的子串替換為字元串instrLOWER(str)將字元串str中所有字元變為小寫UPPER(str)將字元串str中所有字元變為大寫LEFT(str,x)返回字元串str中最左邊的x個字元RIGHT(str,x)返回字元串str中最右邊的x個字元LPAD(str,n,pad)使用字元串pad對字元串str最左邊進行填充,直到長度為n個字元長度RPAD(str,n,pad)使用字元串pad對字元串str最右邊進行填充,直到長度為n個字元長度LTRIM(str)去掉字元串str左邊的空格RTRIM(str)去掉字元串str右邊的空格REPEAT(str,x)返回字元串str重複x次的結果REPLACE(str,a,b)使用字元串b替換字元串str中所有出現的字元串aSTRCMP(str1,str2)比較字元串str1和str2TRIM(str)去掉字元串str行頭和行尾的空格SUBSTRING(str,x,y)返回字元串str中從x位置起y個字元長度的字元串

示例

//repeat(str,x)
mysql> select repeat("jf",3);
+----------------+
| repeat("jf",3) |
+----------------+
| jfjfjf |
+----------------+
//strcmp("str1","str2")
//如果str1和str2相同,返回0。
//如果str1第一個字元和str2的第一個字元不同,結束比較,str1的第一個字元ASCII碼值大,返回1,否則返回-1。
//如果第一個字元相同,第二個字元不同,結束比較,str1的第二個字元ASCII碼值大,返回1,否則返回-1。
//.......
//str1和str2相同,返回0
mysql> select strcmp("jf","jf");
+-------------------+
| strcmp("jf","jf") |
+-------------------+
| 0 |
+-------------------+
//str1大於str2,返回1
mysql> select strcmp("jj","jf");
+---------------------+
| strcmp("jjf","jf") |
+---------------------+
| 1 |
+---------------------+
//str2大於str1,返回-1
mysql> select strcmp("jf","jj");
+--------------------+
| strcmp("jf","jjf") |
+--------------------+
| -1 |
+--------------------+
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39

總結

我們知道,具有可移植性的代碼是好代碼。在資料庫軟體中,多數SQL語句是可移植的,而使用了函數的SQL可移植性會降低。主要是由於各種資料庫軟體都支持自己所特有的函數。因此許多SQL用戶不認同使用資料庫軟體特有的函數。

MySQL字元串函數

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 程序員小新人學習 的精彩文章:

ajax跨域問題(三種解決方案)
基於 Python 自建分散式高並發 RPC 服務

TAG:程序員小新人學習 |