0

我在 MYSQL 中创建了一个带有计划日期的事件。例如,事件在当前月份的第一个日期触发。

我正在使用以下查询来选择当前月份的第一个日期

select CAST(DATE_FORMAT(NOW(),'%Y-%m-01') as DATE)

我的疑问是该事件在该日期触发了多少次。

4

1 回答 1

1

您可以使用分析您的查询EXPLAIN

"EXPLAIN SELECT CAST(DATE_FORMAT(NOW(),'%Y-%m-01') as DATE)";

选择:

如果你想找到当月的第一天,那么你可以创建一个自定义函数

DELIMITER ;;
CREATE FUNCTION FIRST_DAY(day DATE)
RETURNS DATE DETERMINISTIC
BEGIN
  RETURN ADDDATE(LAST_DAY(SUBDATE(day, INTERVAL 1 MONTH)), 1);
END;;
DELIMITER ;
That way:

参考

然后打电话

SELECT FIRST_DAY(DATE(NOW()));
于 2012-08-28T08:53:01.893 回答