Loading

mysql函数

聚合函数

【1】count()

  • 统计表中数据的行数或者统计指定列其值不为NULL的数据个数
-- 查询表里有多少个人
select count(id) from user;

+-----------+
| count(id) |
+-----------+
|        13 |
+-----------+

【2】max()

  • 指定列的最大值
-- 查询最高的工资
select max(salary) from user;

+-------------+
| max(salary) |
+-------------+
|        6000 |
+-------------+

【3】min()

  • 和max()相反,取指定列的最小值
-- 查询最低的工资
select min(salary) from user;

+-------------+
| min(salary) |
+-------------+
|        4500 |
+-------------+

【4】sum()

  • 求指定列的数据之和
-- 求所有员工的工资和
select sum(salary) from user;

+-------------+
| sum(salary) |
+-------------+
|       68600 |
+-------------+

【5】avg()

  • 求指定列的值的平均值
-- 求该公司的平均薪资
select avg(salary) from user;

+-------------+
| avg(salary) |
+-------------+
|   5276.9231 |
+-------------+

其他常用函数

【1】时间函数

SELECT NOW(); -- 显示现在的年月日时间 2024-01-25 17:25:05
SELECT DAY (NOW()); -- 显示今天是第几日
SELECT DATE (NOW()); -- 显示今天的年月日
SELECT TIME (NOW()); -- 显示现在的时间,精确到秒
SELECT YEAR (NOW()); -- 显示今天的年份
SELECT MONTH (NOW()); -- 显示今天的月份
SELECT CURRENT_DATE();--  2024-01-25 显示今天的年月日
SELECT CURRENT_TIME(); -- 显示现在的时间 精确到秒
SELECT CURRENT_TIMESTAMP(); -- 显示现在的年月日时间 2024-01-25 17:25:05
SELECT ADDTIME('14:23:12','01:02:01'); -- 显示时间相加
SELECT DATE_ADD(NOW(),INTERVAL 1 DAY); -- 显示往后推移一天的时间
SELECT DATE_ADD(NOW(),INTERVAL 1 MONTH); -- 显示往后推移一个月的时间
SELECT DATE_SUB(NOW(),INTERVAL 1 DAY); -- 显示往前推移一天的时间
SELECT DATE_SUB(NOW(),INTERVAL 1 MONTH); -- 显示往前推移一个月的时间
SELECT DATEDIFF('2019-07-22','2019-05-05'); -- 显示两个日期相差多少天

【2】字符串函数

-- 连接函数:
SELECT CONCAT ()
-- 查找索引
SELECT INSTR ();
-- 统计长度
SELECT LENGTH();

【3】数学函数

-- 绝对值
SELECT ABS(-136);
-- 向下取整
SELECT FLOOR(3.14);
-- 向上取整
SELECT CEILING(3.14);
posted @ 2024-03-24 17:03  HuangQiaoqi  阅读(4)  评论(0编辑  收藏  举报