mysql 字串擷取函式:ord(),cast(),left(), right(), substring(), substring_index(), mid(), substr()。其中,mid(), substr() 等價於substring() 函式,substring() 的功能非常強大和靈活。
ord:用於返回字串第乙個字元的ascii碼。
cast(12,as char): 將12轉換成char型別。
ifnull(exp1,exp2):如果exp1不為null時返回exp1,位null時返回exp2。
1. 字串擷取:left(str, length)
mysql> select left('example.com', 3);
| left('example.com', 3) |
| exa |
2. 字串擷取:right(str, length)
mysql> select right('example.com', 3);
| right('example.com', 3) |
| com |
例項:#查詢某個欄位後兩位字元
select right(last3, 2) as last2 from historydata limit 10;
#從應該欄位取後兩位字元更新到另外乙個字段
update `historydata` set `last2`=right(last3, 2);
3. 字串擷取:substring(str, pos); substring(str, pos, len)
3.1 從字串的第 4 個字元位置開始取,直到結束。
mysql> select substring('example.com', 4);
| substring('example.com', 4) |
| mple.com |
3.2 從字串的第 4 個字元位置開始取,只取 2 個字元。
mysql> select substring('example.com', 4, 2);
| substring('example.com', 4, 2) |
| mp |
3.3 從字串的第 4 個字元位置(倒數)開始取,直到結束。
mysql> select substring('example.com', -4);
| substring('example.com', -4) |
| .com |
3.4 從字串的第 4 個字元位置(倒數)開始取,只取 2 個字元。
mysql> select substring('example.com', -4, 2);
| substring('example.com', -4, 2) |
| .c |
我們注意到在函式 substring(str,pos, len)中, pos 可以是負值,但 len 不能取負值。
4. 字串擷取:substring_index(str,delim,count)
4.1 擷取第二個 '.' 之前的所有字元。
mysql> select substring_index('www.example.com', '.', 2);
| substring_index('www.example.com', '.', 2) |
| www.example |
4.2 擷取第二個 '.' (倒數)之後的所有字元。
mysql> select substring_index('www.example.com', '.', -2);
| substring_index('www.example.com', '.', -2) |
| example.com |
4.3 如果在字串中找不到 delim 引數指定的值,就返回整個字串
mysql> select substring_index('www.example.com', '.coc', 1);
| substring_index('www.example.com', '.coc', 1) |
| www.example.com |
mysql字串亂碼 解決Mysql字串亂碼
1 字符集和字元序2 3 字符集 character set 定義了字元以及字元編碼。4 5 字元序 collation 定義了字元的比較規則。6 7 mysql支援多種字符集 與 字元序。8 9 乙個字符集對應至少一種字元序 一般是1對多 10 11 兩個不同的字符集不能有相同的字元序。12 13...
mysql 可變字串 MySQL 字串型別
字串型 set enum blob text varchar char。1.char 字元 格式 char m 固定長度 m 表示嚴格限定的長度。char 5 varchar 5 5位元組1位元組 需要乙個位元組,儲存字串的總長度 abc abcde abcdef 超出限制,插入不成功 插入不成功 ...
mysql街字串 MySQL字串分割
在mysql中沒有字串分割函式功能,但可以通過巧妙地使用不同的字串函式來實現。假設有如下的表 mysql create table address id integer auto increment primary key,fullname varchar 255 company varchar 2...