select 字段类表 | 表达式 | 函数
函数名(参数)
数学函数
Pl() 返回pi的值(圆周率)
例:
select pi() from book;
select distinct pi() from book;
##因为圆周率函数跟book任何字段都没有关系,所以 在刚刚的查询过程当中不需要传入任何参数。
FLOOR(x) 返回小于x的最大整数值,去掉小数取整
例:
在 book表中 存在 num=5 name=time price=5.89
select floor(price) from book where num = 5;
##查询num为5的price并以整数形式返回结果。
CEILING(x) 返回大于x的最小整数值,(进一取整)
##与上相反,注意 只要小数部分不为零, 进一取整
ROUND(x,y)
返回参数x的四舍五入的有y位小数的值,(四舍五入)
例:
在 book表中 存在 num=5 name=time price=5.89
select round(price) from book where num = 5;
##返回值为price=5.9
select price from book where num =5;
##返回值为 5.89
##上述对比可知 round() 就是四舍五入
TRUNCATE(x,y) 返回数字x截短为y位小数的结果
例如:
在 book表中 存在 num=5 name=time price=5.89
select truncate(price,1) from book where num = 5;
##返回值为:5.8,这里是直接截取小数点后一位
在 book表中 存在 num=6 name=Day price=228.22
select truncate(price,-1) from book where num = 5;
##返回值为:220
select truncate(price,-2) from book where num =
5;
##返回值为: 200
聚合函数也称之为分组函数
AVG(col) 返回指定列的平均值
例:求book中所有书籍的平均值
select avg(price) from book;
COUNT(cot) 返回指定列中非NULL值/行的个数(当函数参数为星号 * 时不会忽略)
例如:book中含有3个price值 price=5.89 price=228.22 price=null
select count(price) from book;
##返回值为: 2
这里查询过程中,会将此列中不为空的数量返回;
MIN(col) 返回指定列的最小值
例:查询price中最小值
select min(price) from book;
##返回值为:5.89 null在表中不为查询对象;
MAX(col) 返回指定列的最大值
##同上
SUM(col) 返回指定列的所有值之和
##同上
字符串函数
CONCAT(sl^2…,sn) 将 sl,s2__.,5a连接成字符串
例如:
select concat(name,‘的价格是',price) from book;
##中文,空格,关键字 都可以写在引号中
LTRIM(str) 去掉字符串str开头的空格
RTRIM(str) 去掉字符串str尾部的空格
TRIM(str) 去掉字符串首部和尾部的所有空格
SUBSTRING(str,x,y) 截取字符串x 开始 y 个
例:
select substring(name,1,1) from book ;
##这里如果不写x,y 就一直截取到结尾
日期函数
YEAR(date) 返回日期date的年份(1000-9999)
例:
select year(这里填入你的日期的字段名) from book;
select year(date) from book;
MONTH(date) 返回date的月份值(1-12)
DAY(date) 返回date的天数部分
HOUR(time) 返回time的小时值(0-23)
MINUTE(time) 返回time的分钟值(0-59
SECOND(time) 返回time的秒值(0-59)
注意:这里的时分秒 是time类型 这里才有意义,
如果是date类型 这里的时分秒是没有意义的
DATE(datetime)返回datetime的日期值
TIME(datetime) 返回datetime的时间值
注意 datetime 类型要对应的 datetime 类型 才有意义