mysql常用字串 MYSQL常用字串函式寶典

2021-10-17 13:03:12 字數 4196 閱讀 1971

mysql常用字串函式

想更進一步加強自己在查詢語句方面的能力,需要掌握常用函式。

字串函式

(1).concat(s1,s2,…sn)

將s1,s2,…sn串聯成乙個字串。

exp:

root@test 14:43>desc t1;

| field | type| null | key | default | extra |

| id| int(11)| yes||

null||

| t1| datetime | yes|| null||

2 rows in set (0.00 sec)

root@test 14:44>select * from t1;

| id| t1|

|1 | 2012-05-13 12:27:12 |

|2 | 2012-05-13 12:27:12 |

|3 | 2012-05-13 12:27:12 |

3 rows in set (0.00 sec)

root@test 14:44>select

concat('2013-05-',day(t1),' ',curtime()) from t1;

| concat('2013-05-',day(t1),' ',curtime())

| 2013-05-13 14:44:14|

| 2013-05-13 14:44:14|

| 2013-05-13 14:44:14|

3 rows in set (0.00 sec)

(2).lower(str)

將字串str字元變為小寫。

exp:

root@test 14:44>select

lower('alang85');

| lower('alang85') |

| alang85|

(3).upper(str)

將字串str字元變為大寫。

exp:

root@test 14:47>select

upper('alang85');

| upper('alang85') |

| alang85|

(4).left(str,x)

返回字串str最左邊的x個字元。

exp:

root@test 14:49>select

left('chinaunix',2);

| left('chinaunix',2) |

| ch|

right(str,x)

返回字串str最右邊的x個字元。

exp:

root@test 14:49>select

right('chinaunix',2);

| right('chinaunix',2) |

| ix|

(5).lpad(str,n,pad)

用字串pad對str最左邊進行填充,直到長度為n個字元長度。

exp:

root@test 14:52>select

lpad('china',10,'alang85');

| lpad('china',10,'alang85') |

| alangchina|

(6).rpad(str,n,pad)

用字串pad對str最右邊進行填充,直到長度為n個字元長度。

exp:

root@test 14:53>select

rpad('china',10,'alang85');

| rpad('china',10,'alang85') |

| chinaalang|

(7).ltrim(str)

出掉字串str左側的空格。

exp:

root@test 14:58>select ltrim('alang85');

| ltrim('alang85') |

| alang85|

(8).rtrim(str)

出掉字串str右側的空格。

exp:

root@test 14:58>select rtrim('alang85');

| rtrim('alang85') |

|alang85|

(9).trim(str)

出掉字串行首和行尾的空格。

exp:

root@test 14:58>select trim('alang85');

| trim('alang85') |

| alang85|

(10).repeat(str,x)

返回str重複x次的結果。

exp:

root@test 15:00>select

repeat('alang85',2);

| repeat('alang85',2) |

| alang85alang85|

(11).replace(str,a,b)

用字串b替換str中所有出現的字串a。

exp:

root@(none) 15:22>select

replace('alang85','85','china');

| replace('alang85','85','china') |

| alangchina|

(12).strcmp(s1,s2)

比較字串s1和s2。s1與s2相等時返回0;s1大於s2時,返回1;s1小於s2時,返回-1。

exp:

root@test 15:01>select

strcmp('chinaunix','alang85');

| strcmp('chinaunix','alang85') |

|1 |

root@test 15:01>select

strcmp('alang85','chinaunix');

| strcmp('alang85','chinaunix') |

|-1 |

root@test 15:01>select

strcmp('alang85','alang85');

| strcmp('alang85','alang85') |

|0 |

(13).substring(str)

返回字串str x位置起y個字元長度的字串。

exp:

root@(none) 15:24>select

substring('chinaunix',6,4);

| substring('chinaunix',6,4) |

| unix|

其餘幾種用法:

mysql> select

substring('quadratically',5);

-> 'ratically'

mysql> select substring('foobarbar' from

4);-> 'barbar'mysql> select substring('sakila', -3);

-> 'ila'

mysql> select substring('sakila', -5,

3);-> 'aki'

mysql> select substring('sakila' from -4

for 2);

-> 'ki'

(14).insert(str,x,y,instr)

將字串str從第x位置開始,y個字串長的字串替換為instr。

exp:

root@(none) 15:26>select

insert('chinaunix',6,4,'alang');

| insert('chinaunix',6,4,'alang') |

| chinaalang|

(15).reverse(str)

將字串str反向顯示

root@(none) 15:44>select

reverse('alang85');

| reverse('alang85') |

| 58gnala|

(16)ascii(str)

返回字串str的ascii數值,如果字串為null返回null,如果字元長空字元返回0.

root@(none) 15:50>select ascii('b');

| ascii('b') |

|         98 |

MYSQL 常用字串函式

ascii str 返回值為字串str 的最左字元的數值。left str,len 返回字串str的最左面len個字元。right str,len 返回字串str的最右面len個字元。locate substr,str,pos 返回子串substr在字串str第乙個出現的位置,從位置pos開始。如果...

mysql常用字串函式

size medium color blue b 1.字串長度函式char length str length str b color size char length 返回值為字串str的長度,長度的單位為字元。乙個多位元組字元算作乙個單字元。對於乙個包含五個二位元組字符集,length 返回值為...

MySQL中常用字串函式

分類 資料庫技術2014 04 07 23 06 6708人閱讀 舉報1.字串長度函式char length str length str char length 返回值為字串str的長度,長度的單位為字元。乙個多位元組字元算作乙個單字元。對於乙個包含五個二位元組字符集,length 返回值為 10...