10.MySQL字符函数

字符函数
连接字符:CONCAT()
mysql> SELECT CONCAT('www.','toly.','top');
+------------------------------+
| CONCAT('www.','toly.','top') |
+------------------------------+
| www.toly.top                 |
+------------------------------+
1 row in set (0.00 sec)

创建名单表并插入数据:

mysql> CREATE TABLE 名单 (
    -> 姓 VARCHAR(12) NOT NULL,
    -> 名  VARCHAR(24) NOT NULL
    -> );
Query OK, 0 rows affected (0.07 sec)
mysql> INSERT 名单 VALUES('张','飞'),('刘','备'),('关','羽');
Query OK, 3 rows affected (0.04 sec)
Records: 3  Duplicates: 0  Warnings: 0

mysql> SELECT *FROM 名单;
+-----+-----+
| 姓  | 名  |
+-----+-----+
| 张  | 飞  |
| 刘  | 备  |
| 关  | 羽  |
+-----+-----+
3 rows in set (0.00 sec)

全名拼接输出:

mysql> SELECT CONCAT(姓,名)  AS 三英 FROM 名单;
+--------+
| 三英   |
+--------+
| 张飞   |
| 刘备   |
| 关羽   |
+--------+
3 rows in set (0.00 sec)
指定分隔符连接字符:CONCAT_WS()
mysql> SELECT CONCAT_WS('.','www','toly','top');
+-----------------------------------+
| CONCAT_WS('.','www','toly','top') |
+-----------------------------------+
| www.toly.top                      |
+-----------------------------------+
1 row in set (0.00 sec)
格式化数字:FORMAT()
mysql> SELECT FORMAT(1299402.779040,2);
+--------------------------+
| FORMAT(1299402.779040,2) |
+--------------------------+
| 1,299,402.78             |
+--------------------------+
1 row in set (0.02 sec)
变小写:LOWER()
mysql> SELECT LOWER('ToLy');
+---------------+
| LOWER('ToLy') |
+---------------+
| toly          |
+---------------+
1 row in set (0.00 sec)
变大写:UPPER()
mysql> SELECT UPPER('ToLy');
+---------------+
| UPPER('ToLy') |
+---------------+
| TOLY          |
+---------------+
1 row in set (0.00 sec)
从左侧取字符:LEFT()
mysql> SELECT LEFT('ToLy',2);
+----------------+
| LEFT('ToLy',2) |
+----------------+
| To             |
+----------------+
1 row in set (0.00 sec)
从左侧取字符:LEFT()
mysql> SELECT RIGHT('ToLy',2);
+-----------------+
| RIGHT('ToLy',2) |
+-----------------+
| Ly              |
+-----------------+
1 row in set (0.00 sec)
字符长度(注:含空格):LENGTH()
mysql> SELECT LENGTH('To Ly');
+-----------------+
| LENGTH('To Ly') |
+-----------------+
|               5 |
+-----------------+
1 row in set (0.00 sec)
删开头左空格:LTRIM()
mysql> SELECT LTRIM('  To Ly  ');
+--------------------+
| LTRIM('  To Ly  ') |
+--------------------+
| To Ly              |
+--------------------+
1 row in set (0.00 sec)

删结尾右空格:LTRIM()

mysql> SELECT RTRIM('  To Ly  ');
+--------------------+
| RTRIM('  To Ly  ') |
+--------------------+
|   To Ly            |
+--------------------+
1 row in set (0.00 sec)
删开头左空格和结尾右空格:TRIM()
mysql> SELECT TRIM('  To Ly  ');
+-------------------+
| TRIM('  To Ly  ') |
+-------------------+
| To Ly             |
+-------------------+
1 row in set (0.00 sec)
替换:REPLACE()
mysql> SELECT REPLACE('  To Ly  '," ","");
+-----------------------------+
| REPLACE('  To Ly  '," ","") |
+-----------------------------+
| ToLy                        |
+-----------------------------+
1 row in set (0.00 sec)
截取:SUBSTRING(“字符串”,第几个开始(左正右负),截取几个)
mysql> SELECT SUBSTRING("ToLy",2,1);
+-----------------------+
| SUBSTRING("ToLy",2,1) |
+-----------------------+
| o                     |
+-----------------------+
1 row in set (0.00 sec)
mysql> SELECT SUBSTRING("ToLy",-2,2);
+------------------------+
| SUBSTRING("ToLy",-2,2) |
+------------------------+
| Ly                     |
+------------------------+
1 row in set (0.00 sec)
匹配字符:LIKE()(%:任意字符 _:任一字符)
mysql> INSERT 名单 VALUES('诸葛','亮');
Query OK, 1 row affected (0.00 sec)
mysql> SELECT *FROM 名单;
+--------+-----+
| 姓     | 名  |
+--------+-----+
| 张     | 飞  |
| 刘     | 备  |
| 关     | 羽  |
| 诸葛   | 亮  |
+--------+-----+
4 rows in set (0.00 sec)

mysql> SELECT*FROM 名单 WHERE 姓 LIKE('%葛%') ;
+--------+-----+
| 姓     | 名  |
+--------+-----+
| 诸葛   | 亮  |
+--------+-----+
1 row in set (0.00 sec)

如果已经有’%’:(其中0可任意指定,与后统一即可)

mysql> INSERT 名单 VALUES('赵%','云');
Query OK, 1 row affected (0.03 sec)
mysql> SELECT*FROM 名单 WHERE 姓 LIKE('%0%%') ESCAPE '0';
+------+-----+
| 姓   | 名  |
+------+-----+
| 赵%  | 云  |
+------+-----+
1 row in set (0.00 sec)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值