mysql从当前时间往前偏移24小时,和当天24小时sql
当天24小时数据
SELECT  DATE_FORMAT( DATE_SUB( DATE_FORMAT( NOW(),'%Y-%m-%d'),INTERVAL ( -(@i:=@i+1) ) HOUR ) ,'%Y-%m-%d %H') AS 'time'
         FROM (
              SELECT a  FROM 
               (SELECT '1' AS a UNION SELECT '2' UNION SELECT '3' UNION SELECT '4'   ) AS a
                JOIN ( SELECT  '1' UNION SELECT '2' UNION SELECT '3' UNION SELECT '4' UNION SELECT '5' UNION SELECT '6' ) AS b
                 ON 1
               ) AS b  ,(SELECT @i:=-1)  AS i
当前时间向前偏移24小时
SELECT  DATE_FORMAT( DATE_SUB( DATE_FORMAT( NOW(),'%Y-%m-%d %H'),INTERVAL ( (@i:=@i+1) ) HOUR ) ,'%H') AS 'time'
         FROM (
              SELECT a  FROM 
               (SELECT '1' AS a UNION SELECT '2' UNION SELECT '3' UNION SELECT '4'   ) AS a
                JOIN ( SELECT  '1' UNION SELECT '2' UNION SELECT '3' UNION SELECT '4' UNION SELECT '5' UNION SELECT '6' ) AS b
                 ON 1
               ) AS b  ,(SELECT @i:=-1)  AS i
当前时间向前偏移7天
SELECT  DATE_FORMAT( DATE_SUB( DATE_FORMAT( NOW(),'%Y-%m-%d'),INTERVAL ( (@i:=@i+1) ) DAY ) ,'%d') AS 'time'
         FROM (
              SELECT a  FROM 
               (SELECT '1' AS a UNION SELECT '2' UNION SELECT '3' UNION SELECT '4' UNION SELECT '5' UNION SELECT '6' UNION SELECT '7' ) AS a
               ) AS b  ,(SELECT @i:=-1)  AS i
当前时间向前偏移12个月份,另外多加了一个rank字段,可以做排序,如果不需要可以根据需求去掉
SELECT DATE_FORMAT( DATE_SUB( DATE_FORMAT(NOW(), '%Y-%m-%d %H'), INTERVAL ((@i :=@i + 1)) MONTH ), '%m' ) AS 'time',(@c :=@c + 1) AS rank FROM ( SELECT a FROM ( SELECT '1' AS a UNION SELECT '2' ) AS a JOIN ( SELECT '1' UNION SELECT '2' UNION SELECT '3' UNION SELECT '4' UNION SELECT '5' UNION SELECT '6' ) AS b ON 1 ) AS b, (SELECT @i :=- 1) AS i,(SELECT @c := 0) c
 
                    
                
 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号