日期作为条件
如:
首先创建日期辅助表
/*
Navicat Premium Data Transfer
Source Server : localhost
Source Server Type : MySQL
Source Server Version : 50553
Source Host : localhost:3306
Source Schema : maiji1.5
Target Server Type : MySQL
Target Server Version : 50553
File Encoding : 65001
Date: 26/04/2020 14:43:23
*/
SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;
– Table structure for wancll_calendar_auxiliary
DROP TABLE IF EXISTS wancll_calendar_auxiliary;
CREATE TABLE wancll_calendar_auxiliary (i int(11) NULL DEFAULT NULL
) ENGINE = MyISAM CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = ‘日期辅助表’ ROW_FORMAT = Fixed;
– Records of wancll_calendar_auxiliary
INSERT INTO wancll_calendar_auxiliary VALUES (0);
INSERT INTO wancll_calendar_auxiliary VALUES (1);
INSERT INTO wancll_calendar_auxiliary VALUES (2);
INSERT INTO wancll_calendar_auxiliary VALUES (3);
INSERT INTO wancll_calendar_auxiliary VALUES (4);
INSERT INTO wancll_calendar_auxiliary VALUES (5);
INSERT INTO wancll_calendar_auxiliary VALUES (6);
INSERT INTO wancll_calendar_auxiliary VALUES (7);
INSERT INTO wancll_calendar_auxiliary VALUES (8);
INSERT INTO wancll_calendar_auxiliary VALUES (9);
SET FOREIGN_KEY_CHECKS = 1;
根据下面的sql语句可以查询出来日期条件
SELECT ADDDATE(DATE_SUB(NOW(), INTERVAL 183 DAY), INTERVAL numlist.id DAY) AS days
FROM
(
SELECT (a.i + b.i * 10 + c.i * 100) AS id FROM wancll_calendar_auxiliary AS a
CROSS JOIN wancll_calendar_auxiliary AS b
CROSS JOIN wancll_calendar_auxiliary AS C
)
AS numlist
WHERE ADDDATE(DATE_SUB(NOW(), INTERVAL 183 DAY), INTERVAL numlist.id DAY) <= NOW()
ORDER BY ADDDATE(DATE_SUB(NOW(), INTERVAL 183 DAY), INTERVAL numlist.id DAY) DESC
查询结果
如图: