数据处理函数:单行处理函数。
每次就是处理一行数据,处理完了再处理下一行。
- Lower()转换为小写
- upper()转化为大写
- substr取子串
- length取长度
- trim 去前后空格空格
- str_to_date() 字符串转化为日期
- format格式化
- round四舍五入
- ifnull 可以将一个null值转化为非空。
这个和Java里面的字符串里面的方法很像,虽然说我也常常忘记了。
特点
一个输入对应一个输出。几个输入就输出几个
## lower()
这个只能处理字符串里面的大写字母。将大写转化为小写
先看一下原始表
将username中大写的字母转化为小写。
SELECT LOWER(username),PASSWORD,phone AS NAME FROM USER;
--SELECT LOWER(字段),其他字段 FROM 表名;
upper()
SELECT UPPER(username)AS NAME,PASSWORD,phone FROM USER;
--SELECT UPPER(字段)AS 别名,其他字段 FROM 表名;
substr()
截取字符串
SELECT SUBSTR(username,1,1) AS '首字母或姓' FROM USER ;
--看图有解释
concat
字符串拼接
SELECT CONCAT(123,username , 'name') AS NAME FROM USER;
--看注解
trim()
SELECT * FROM USER WHERE username =TRIM( ' 张三 ');
--效果等同于SELECT * FROM USER WHERE username ='张三';
str_to_date
一般用于插入日期格式的数据。
在mysql中,默认的日期格式为:’%Y-%m-%d’ 其中%Y为年,%m为月,%d为日
- %Y 译为年,是大写的Y
- %m是月
- %d是日
- %h是小时
- %i是分钟
- %s是秒
现在创建一个表,就一个字段。如下:
CREATE TABLE t_birth(
birth DATE
);
向里面插入数据
--方式1:这种是采用默认日期格式,向里面插入的是字符串,用引号括起来,里面按照 %年,%月,%日
INSERT INTO t_birth VALUES('1998-04-19'); --意味着是1998年4月19号
--方式二
INSERT INTO t_birth VALUES(str_to_date('04-19-1998','%y-%d-%Y')); --按照字符串向里面插入,效果和上面的一样
date_format
一般用于输出日期,按照我们想要的格式输出。
SELECT DATE_FORMAT(birth,'%Y/%m/%d') AS birth FROM t_birth ;
--SELECT DATE_FORMAT(日期字段,'%Y/%m/%d') AS 别名 FROM 表名 ;