MySQL常用字符函數

MySQL常用字符函數簡介

CONCAT(S1,S2…Sn) 連接S1,S2…Sn為一個字符串

concat函數,把傳入的參數連接成為一個字符串。
例如:
把“aaa”、“bbb”、”ccc”3個字符串連接成一個字符串,“aaabbbccc”.另外任何與NULL進行連接的結果都將是NULL.

>SELECT concat(‘aaa’,’bbb’,’ccc’),concat(‘aaa’,NULL);

mysql> SELECT concat('aaa','bbb','ccc'),concat('aaa',NULL);
+---------------------------+--------------------+
| concat('aaa','bbb','ccc') | concat('aaa',NULL) |
+---------------------------+--------------------+
| aaabbbccc                 | NULL               |
+---------------------------+--------------------+
1 row in set (0.00 sec)

INSERT(str,x,y,instr) 將字符串str從第x位置開始,y個字符長的子串替換為字符串

insert(str,x,y,instr)函數:將字符串str從第x位置開始,y個字符長的子串替換成”me”.

mysql> SELECT insert('beijingaiNI',10,2,'WO');
+---------------------------------+
| insert('beijingaiNI',10,2,'WO') |
+---------------------------------+
| beijingaiWO                     |
+---------------------------------+
1 row in set (0.00 sec)

LOWER(str);UPPER(str) 將字符串str中所有字符變為小寫或者大寫

LOWER(str)和UPPER(str)函數:把字符串轉換成小寫或大寫
在字符串比較中,通常要將比較的字符串全部轉換為大寫或者小寫,如下例所示:

mysql> SELECT lower('WOAINI'),upper('woxihuanni');
+-----------------+---------------------+
| lower('WOAINI') | upper('woxihuanni') |
+-----------------+---------------------+
| woaini          | WOXIHUANNI          |
+-----------------+---------------------+
1 row in set (0.00 sec)

LEFT(str,x);RIGHT(str,x) 返回字符串最左或最右邊的x個字符串

LEFT(str,x)和RIGHT(str,x)函數:分別返回字符串最左邊和最右邊的x個字符,如果第二個參數是NULL,那么將不返回任何字符串。
下例所示:

mysql> SELECT left('beijing',3);
+-------------------+
| left('beijing',3) |
+-------------------+
| bei               |
+-------------------+
1 row in set (0.01 sec)

mysql> SELECT left('beijing',NULL);
+----------------------+
| left('beijing',NULL) |
+----------------------+
| NULL                 |
+----------------------+
1 row in set (0.00 sec)

LPAD(str,n,pad);RPAD(str,n,pad) 用字符串pad對str最左邊或最右邊進行填充,直到長度為n個字符長度(n要大于str的長度,否則就不是填充,變成截取了。)

LPAD(str,n,pad)和RPAD(str,n,pad)函數:用字符串pad對str最左邊和最右邊進行填充,直到長度為n個字符串。

mysql> SELECT lpad('beijing',10,'123');
+--------------------------+
| lpad('beijing',10,'123') |
+--------------------------+
| 123beijing               |
+--------------------------+
1 row in set (0.00 sec)

mysql> SELECT rpad('beijing',10,'123');
+--------------------------+
| rpad('beijing',10,'123') |
+--------------------------+
| beijing123               |
+--------------------------+
1 row in set (0.00 sec)

LTRIM(str);RTRIM(str) 去掉字符串str左側和右側的空格

LTRIM(str)和RTRIM(str)函數:去掉字符串str左側和右側的空格。

mysql> SELECT ltrim('  |wo|'),rtrim('|ni|   ');
+-----------------+------------------+
| ltrim('  |wo|') | rtrim('|ni|   ') |
+-----------------+------------------+
| |wo|            | |ni|             |
+-----------------+------------------+
1 row in set (0.00 sec)

REPEAT(str,x) 返回str重復x次

REPEAT(str,x)函數:返回str重復x次的結果。

mysql> SELECT repeat('beijing',3);
+-----------------------+
| repeat('beijing',3)   |
+-----------------------+
| beijingbeijingbeijing |
+-----------------------+
1 row in set (0.00 sec)

REPLACE(str,a,b) 用字符串b替換字符串str中所有出現的字符串a

REPLACE(str,a,b)函數:用字符串b替換字符串str中所有出現的字符串a.

mysql> SELECT replace('beijing','bei','nan');
+--------------------------------+
| replace('beijing','bei','nan') |
+--------------------------------+
| nanjing                        |
+--------------------------------+
1 row in set (0.00 sec)

STRCMP(s1,s2) 比較字符串s1和s2

STRCMP(s1,s2)函數:比較字符串s1和s2的ASCII碼值的大小。
如果s1比s2小,那么就返回-1,相等返回0,大于返回1.

mysql> SELECT strcmp('a','b'),strcmp('b','b'),strcmp('c','b');
+-----------------+-----------------+-----------------+
| strcmp('a','b') | strcmp('b','b') | strcmp('c','b') |
+-----------------+-----------------+-----------------+
|              -1 |               0 |               1 |
+-----------------+-----------------+-----------------+
1 row in set (0.00 sec)

TRIM(str) 去掉字符串行尾和行頭的空格

TRIM(str)函數:去掉目標字符串的開頭和結尾的空格。

mysql> SELECT trim('  ab  ');
+----------------+
| trim('  ab  ') |
+----------------+
| ab             |
+----------------+
1 row in set (0.00 sec)

SUBSTRING(str,x,y) 返回從字符串str中的第x位置起y個字符長度的字串。

SUBSTRING(str,x,y)函數:返回從字符串str中的第x位置起y個字符長度的字串。

mysql> SELECT substring('beijing2017',8,4);
+------------------------------+
| substring('beijing2017',8,4) |
+------------------------------+
| 2017                         |
+------------------------------+
1 row in set (0.00 sec)

原創文章,作者:dance_man,如若轉載,請注明出處:http://www.www58058.com/74546

(0)
dance_mandance_man
上一篇 2017-05-01
下一篇 2017-05-01

相關推薦

  • 學習的第二周

    硬鏈接不能跨分區,硬鏈接不支持對目錄的創建, 硬鏈接的本質是一個文件N個節點  ls |xargs rm 解決參數太長 無法正常刪除的問題。   軟連接 依賴于原始文件 刪除就沒了軟連接可以跨分區,可以根據目錄創建軟連接,而且還可以針對文件夾 軟連接依賴于原始文件。原始文件刪了軟連接就打不開了  相對路徑一般相對當前工作目錄,但…

    Linux干貨 2017-05-30
  • N25-第八周作業

    第八周 1、寫一個腳本,使用ping命令探測172.16.250.1-172.16.250.254之間的所有主機的在線狀態; 在線的主機使用綠色顯示; 不在線的主使用紅色顯示; #!/bin/bash # ip=172.16.250. for i in {1..254}; do if ping -w 1 -c 1 $ip$i &> /dev/n…

    Linux干貨 2017-03-09
  • N_28正則表達式及vim編輯的一些知識

    1、列出當前系統上所有已經登錄的用戶的用戶名,注意:同一個用戶登錄多次,則只顯示一次即可。 ]# who | sort -nu | cut -d” ” -f1 2、取出最后登錄到當前系統的用戶的相關信息。 ]# who | tail -1 | cut -d” ” -f1 | id 3、取出當前系統上被用戶當作其…

    Linux干貨 2017-12-16
  • Nginx配置與應用詳解

    前言 Nginx是由俄羅斯軟件工程師Igor Sysoev開發的一個高性能的HTTP和反向代理服務器,具備IMAP/POP3和SMTP服務器功能。Nginx最大的特點是對高并發的支持和高效的負載均衡,在高并發的需求場景下,是Apache服務器不錯的替代品。目前,包括新浪、騰訊等知名網站都已使用Nginx作為Web應用服務器。本文帶來的是Nginx配置與應用詳…

    Linux干貨 2015-06-15
  • test

    test

    Linux干貨 2017-02-14
  • 網絡管理

    一、網絡概念     什么是網絡     資源共享的功能和優點         數據和應用程序         資源 &…

    Linux干貨 2016-09-09
欧美性久久久久