首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

MySQL 字符串函數大全:從 ASCII、CONCAT 到 REGEXP、JSON 提取的完整參考

     編輯:MySQL 資料庫相關知識

分類速查表

編碼與進制轉換

  • ASCII(str)、ORD(str):首字符碼值;
  • BIN(N)、OCT(N)、HEX(N)、CONV(N,from,to):進制互轉;
  • CHAR(N,... [USING charset]):碼值轉字符串。

長度與字節統計

  • LENGTH(str)/OCTET_LENGTH:字節長度;
  • CHAR_LENGTH(str)/CHARACTER_LENGTH:字符長度(多字節字符計 1);
  • BIT_LENGTH(str):二進制位長度。

拼接與分隔

  • CONCAT(str1,str2,...):任一參數為 NULL 結果為 NULL;
  • CONCAT_WS(sep,str1,str2,...):帶分隔符,自動跳過 NULL。

子串提取與定位

  • SUBSTRING(str,pos[,len])、MID、SUBSTR:提取子串,支持負位置;
  • LEFT(str,len)、RIGHT(str,len):左右定長截取;
  • LOCATE(substr,str[,pos])、POSITION、INSTR:查找位置;
  • SUBSTRING_INDEX(str,delim,count):按分隔符切分取段。

大小寫與修剪

  • LOWER/LCASE、UPPER/UCASE;
  • LTRIM、RTRIM、TRIM([BOTH|LEADING|TRAILING] remstr FROM str)。

填充與替換

  • LPAD(str,len,pad)、RPAD(str,len,pad);
  • REPLACE(str,from,to):全量替換;
  • INSERT(str,pos,len,newstr):指定位置替換指定長度。

其他實用函數

  • REVERSE(str) 反轉;
  • REPEAT(str,count) 重複;
  • SPACE(N) 生成空格;
  • FORMAT(X,D) 數字格式化;
  • SOUNDEX、expr1 SOUNDS LIKE expr2 模糊發音匹配;
  • COMPRESS/UNCOMPRESS、UNCOMPRESSED_LENGTH 壓縮存儲;
  • UNHEX(HEX(str)) 還原十六進制;
  • MAKE_SET(bits,str1,...)、EXPORT_SET 位掩碼轉集合;
  • FIELD(str,str1,...)、ELT(N,str1,...) 索引與值互查;
  • FIND_IN_SET(str,strlist) 集合查找(SET 列優化)。

常用場景速查

需求推薦函數組合
截取前 10 個字符LEFT(col,10) 或 SUBSTRING(col,1,10)
去除首尾空格TRIM(col)
將 'a,b,c' 轉為集合查找FIND_IN_SET('b','a,b,c')
數字轉二進制字符串BIN(num)
壓縮長文本存入 BLOBCOMPRESS(text)
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved