Mysql时间轴数据 获取同一天数据的前三条
创建表数据
CREATETABLE`praise_info`( `id`bigint(20)NOTNULLAUTO_INCREMENTCOMMENT'ID', `pic_id`varchar(64)DEFAULTNULLCOMMENT'图片ID', `created_time`datetimeDEFAULTCURRENT_TIMESTAMPCOMMENT'创建时间', PRIMARYKEY(`id`), KEY`pic_id`(`pic_id`)USINGBTREE )ENGINE=InnoDBAUTO_INCREMENT=3647DEFAULTCHARSET=utf8COMMENT='图片表';
添加数据省略
时间轴前2条数据
SELECT*FROM ( SELECT*,@num:=if(@created_time=DATE_FORMAT(created_time,'%Y-%m-%d'),@num:=@num+1,1)asrow_num, @created_time:=DATE_FORMAT(created_time,'%Y-%m-%d')asaxisTimeFROMpraise_info orderbyiddesc )AStemp WHERErow_num<3;
ps:下面看下MySQL生成时间轴
DROPPROCEDUREIFEXISTSpro_dim_date; tudou@Gyyx CREATEPROCEDUREpro_dim_date(INbdateDATE,INedateDATE) BEGIN DECLAREvarDATEDEFAULTbdate; DECLAREevarDATEDEFAULTDATE_ADD(edate,INTERVAL1DAY); DECLAREbweekDATE; DECLAREeweekDATE; WHILEvar4THEN'是'ELSE'否'END ); SETvar=DATE_ADD(var,INTERVAL1DAY); ENDWHILE; END
调用:
CALLpro_dim_date('2005-01-01','2013-12-31')
结果:
201312172013-12-171720132013年44季度2013122013年12月12月121星期二51第51周(12月11日~12月23日否 201312182013-12-181820132013年44季度2013122013年12月12月122星期三51第51周(12月12日~12月24日否 201312192013-12-191920132013年44季度2013122013年12月12月123星期四51第51周(12月13日~12月25日否 201312202013-12-202020132013年44季度2013122013年12月12月124星期五51第51周(12月14日~12月26日否 201312212013-12-212120132013年44季度2013122013年12月12月125星期六51第51周(12月15日~12月27日是 201312222013-12-222220132013年44季度2013122013年12月12月126星期日51第51周(12月16日~12月28日是 201312232013-12-232320132013年44季度2013122013年12月12月120星期一52第52周(12月17日~12月29日否 201312242013-12-242420132013年44季度2013122013年12月12月121星期二52第52周(12月18日~12月30日否 201312252013-12-252520132013年44季度2013122013年12月12月122星期三52第52周(12月19日~12月31日否 201312262013-12-262620132013年44季度2013122013年12月12月123星期四52第52周(12月20日~1月1日否 201312272013-12-272720132013年44季度2013122013年12月12月124星期五52第52周(12月21日~1月2日否 201312282013-12-282820132013年44季度2013122013年12月12月125星期六52第52周(12月22日~1月3日是 201312292013-12-292920132013年44季度2013122013年12月12月126星期日52第52周(12月23日~1月4日是
表结构:
CREATETABLE`dim_date`( `date_id`int(11)NOTNULLCOMMENT'20110512', `date_name`varchar(16)DEFAULTNULLCOMMENT'2011-05-12', `date_of_month`int(11)DEFAULTNULLCOMMENT'12', `year_id`int(11)DEFAULTNULLCOMMENT'2011', `year_name`varchar(16)DEFAULTNULLCOMMENT'2011年', `quarter_id`int(11)DEFAULTNULLCOMMENT'2', `quarter_name`varchar(16)DEFAULTNULLCOMMENT'2季度', `month_id`int(11)DEFAULTNULLCOMMENT'5', `month_name`varchar(16)DEFAULTNULLCOMMENT'5月', `month_of_year_name`varchar(16)DEFAULTNULLCOMMENT'2011年5月', `month_of_year_id`int(11)DEFAULTNULLCOMMENT'201105', `week_id`int(11)DEFAULTNULL, `week_name`varchar(16)DEFAULTNULL, `week_of_year_id`int(11)DEFAULTNULL, `week_of_year_name`varchar(32)DEFAULTNULL, `is_weekend`enum('否','是')DEFAULTNULLCOMMENT'是否周末', PRIMARYKEY(`date_id`), KEY`ix_dim_date_date_name`(`date_name`), KEY`ix_dim_date_month_id`(`month_id`), KEY`ix_dim_date_year_id`(`year_id`), KEY`ix_dim_date_quanter_id`(`quarter_id`), KEY`ix_dim_date_week_of_year_id`(`week_of_year_id`,`week_of_year_name`) )ENGINE=MyISAMDEFAULTCHARSET=latin1
总结
以上所述是小编给大家介绍的Mysql时间轴数据获取同一天数据的前三条,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!