利用mysql时间函数监控表中有没有当天数据

sofast 2020-06-12

监控mysql表中数据,如果没有当天的数据就用zabbix报警

mysql表用有时间列,需要使用时间函数做判断

1.当前日期函数

mysql> SELECT NOW();
+---------------------+
| NOW()               |
+---------------------+
| 2020-06-12 10:07:07 |
+---------------------+
1 row in set (0.00 sec)

2.日期转换成天数函数

mysql> SELECT TO_DAYS(‘2020:08:08‘);
+-----------------------+
| TO_DAYS(‘2020:08:08‘) |
+-----------------------+
|                738010 |
+-----------------------+
1 row in set (0.00 sec)  

查表中数据有没有今天的

mysql> SELECT COUNT(*) FROM t_machine_alert_gantt WHERE TO_DAYS(start_time) = TO_DAYS(NOW());
+----------+
| COUNT(*) |
+----------+
|     3799 |
+----------+

在zabbix中比较这个数字是否为0,为0就报警

相关推荐