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...