MySQL 查询更新所有记录以仅将第一个字母大写并将所有其他字母设置为小写
让我们首先创建一个表:
mysql> create table DemoTable2017
-> (
-> Name text
-> );
Query OK, 0 rows affected (0.55 sec)使用插入命令在表中插入一些记录:
mysql> insert into DemoTable2017 values('JOHN SMITH,MYSQL');
Query OK, 1 row affected (0.13 sec)
mysql> insert into DemoTable2017 values('DAVID MILLER,MONGODB');
Query OK, 1 row affected (0.12 sec)
mysql> insert into DemoTable2017 values('CHRIS BROWN,JAVA');
Query OK, 1 row affected (0.11 sec)使用 select 语句显示表中的所有记录:
mysql> select *from DemoTable2017;这将产生以下输出:
+----------------------+
| Name |
+----------------------+
| JOHN SMITH,MYSQL |
| DAVID MILLER,MONGODB |
| CHRIS BROWN,JAVA |
+----------------------+
3 rows in set (0.00 sec)以下查询仅将第一个字母设置为大写,其余字母设置为小写:
mysql> update DemoTable2017
-> set Name=REPLACE(CONCAT(UPPER(LEFT(Name, 1)),
LOWER(SUBSTRING(Name, 2))),' , ', ', ');
Query OK, 3 rows affected (0.16 sec)
Rows matched: 3 Changed: 3 Warnings: 0
让我们再次检查一下表记录:
mysql> select *from DemoTable2017;这将产生以下输出:
+----------------------+
| Name |
+----------------------+
| John smith,mysql |
| David miller,mongodb |
| Chris brown,java |
+----------------------+
3 rows in set (0.00 sec)