標籤:
MySQL字元函數
MySQL資料庫中常用的字元函數有下面幾個:
(1)字元串連
首先建立一個名字為imooc的資料庫,然後再使用CONCAT()字元串連函數進行查詢:
CREATE DATABASE imooc;
SELECT CONCAT(‘imooc‘,‘MySQL‘);
SELECT CONCAT(‘imooc‘,‘-‘,‘MySQL‘);
前期資料準備
CREATE TABLE test(
first_name VARCHAR(20),
last_name VARCHAR(10)
);
DESC test;
向test資料表中插入4條記錄
INSERT test VALUES(‘A‘,‘B‘);
INSERT test VALUES(‘C‘,‘D‘);
INSERT test VALUES(‘tom%‘,‘123‘);
INSERT test VALUES(NULL,‘11‘);
我們要將test資料表中的兩個欄位合并起來一併進行查詢並且取名字輸出
SELECT * FROM test;
SELECT CONCAT(first_name,last_name) AS fullname FROM test;
(2)使用指定的分隔字元進行字元串連
SELECT CONCAT_WS(‘|‘,‘A‘,‘B‘,‘C‘);
SELECT CONCAT_WS(‘-‘,‘imooc‘,‘MySQL‘,‘Functions‘);
(3)數字格式化
數字格式化函數FORMAT()返回的結果是四捨五入後的保留指定小數位元的結果。
SELECT FORMAT(12560.74,2);
SELECT FORMAT(12560.74,1);
SELECT FORMAT(12560.74,0);
(4)轉換成小寫字母和轉換成大寫字母
SELECT LOWER(‘MySQL‘);
SELECT UPPER(‘mysql‘);
(5)擷取左側字元和擷取右側字元
擷取的字元個數是指定位元的左側或右側字元。
SELECT LEFT(‘MySQL‘,2);
SELECT LOWER(LEFT(‘MySQL‘,2));
SELECT RIGHT(‘MySQL‘,3);
(6)擷取字串長度(包含空格)
SELECT LENGTH(‘MySQL‘);
SELECT LENGTH(‘My SQL‘);
(7)刪除前置空格和刪除後續空格以及同時刪除前置和後續空格
SELECT LTRIM(‘ MySQL ‘);
SELECT LENGTH(‘ MySQL ‘);
SELECT LENGTH(LTRIM(‘ MySQL ‘));
SELECT LENGTH(RTRIM(‘ MySQL ‘));
SELECT LENGTH(TRIM(‘ MySQL ‘));
(8)TRIM()函數的同時刪除其他字元
SELECT TRIM(LEADING ‘?‘ FROM ‘??MySQL???‘);
SELECT TRIM(TRAILING ‘?‘ FROM ‘??MySQL???‘);
SELECT TRIM(BOTH ‘?‘ FROM ‘??MySQL???‘);
(9)字串替換函數
TRIM()函數只能去掉字串的前置和後續的問號,這就需要使用字串替換函數來進行替換
SELECT TRIM(BOTH ‘?‘ FROM ‘??My??SQL???‘);
SELECT REPLACE(‘??My??SQL???‘,‘?‘,‘‘);
(10)字串截取函數
MySQL資料庫中的字串截取索引是從1開始的。這個函數也支援負數,也就是從後面開始截取。
SELECT SUBSTRING(‘MySQL‘,1,2);
SELECT SUBSTRING(‘MySQL‘,3);
SELECT SUBSTRING(‘MySQL‘,-1);
(11)模式比對
%(百分比符號):代表任意個字元。
_(底線):代表任意一個字元。
SELECT ‘MySQL‘ LIKE ‘M%‘;
SELECT * FROM test WHERE first_name LIKE ‘%o%‘;
SELECT * FROM test WHERE first_name LIKE ‘%1%%‘ ESCAPE ‘1‘ ;
MySQL學習17:運算子與函數之字元函數