拼接字段
- 使用 Concat() 函数来拼接两个列,使用 AS 来重命名新的列:
select concat(first_name,' ',last_name) as 'new_columns' from sakila.actor
- 如果同时想显示其他所有列,可以如下写:
select *,concat(first_name,' ',last_name) as 'new_columns' from sakila.actor
通过 select 进行算数运算
- 语句:
select *,length*rental_rate as new_line from sakila.film
使用数据处理函数
-
数据处理的函数针对的都是列,数据处理函数有如下:
函数 含义 Left() 返回串左边的字符 Length() 返回串的长度 Locate() 找出串的一个子串 Lower() 将串转化为小写 LTrim() 去掉串左边的空格 Right() 返回串右边的字符 RTrim() 去掉串右边的空格 Soundex() 返回串的SOUNDEX 值 SubString() 返回子串的字符 Upper() 将串转化为大写 -
实例:
select * from sakila.film where length(special_features)=8;
使用时间处理函数
-
常用的时间处理函数:
函数 含义 Curdate() 返回当前日期 Curtime() 返回当前时间 Date() 返回日期时间的日期部分 DateDiff() 计算两个日期的时间差 Date_Format() 返回一个格式化的日期或者时间串 Day() 返回一个日期的天数部分 DayOfWeek() 返回对应日期的星期几 Hour() 返回一个时间的小时部分 Minute() 返回一个时间的分钟部分 -
实例:
select * from sakila.film where date(last_update)='2006-02-15';
- 注意,这里的日期在使用 where 进行条件过滤的时候要加引号
-
通过
between
语句来过滤一个时间段内的事件:select * from sakila.film where date(last_update) between '2006-02-15' and '2006-03-28';
数学常用函数
-
一些常用的数据处理函数:
函数 含义 Abs() 绝对值 Cos() 余弦 Exp() 指数 Mod() 余数 Pi() 圆周率 Rand() 随机数 Sin() 正弦 Sqrt() 平方根 Tan() 正切 -
举例:
select * from sakila.film where Sin(length) between 0 and 0.05;