Mysql时间轴数据 获取同一天数据的前三条
创建表数据 CREATE TABLE praise_info
( id
bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'ID', pic_id
varchar(64) DEFAULT NULL COMMENT '图片ID', created_time
datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',PRIMARY KEY (`
<p>创建表数据</p>
CREATE TABLE praise_info
(
id
bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'ID',
pic_id
varchar(64) DEFAULT NULL COMMENT '图片ID',
created_time
datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
PRIMARY KEY (id
),
KEY pic_id
(pic_id
) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=3647 DEFAULT CHARSET=utf8 COMMENT='图片表';
添加数据省略
时间轴前2条数据
SELECT FROM ( SELECT , @num := if(@created_time = DATE_FORMAT(created_time, '%Y-%m-%d'), @num := @num + 1, 1) as row_num, @created_time := DATE_FORMAT(created_time, '%Y-%m-%d') as axisTime FROM praise_info order by id desc ) AS temp WHERE row_num < 3;
ps:下面看下MySQL 生成 时间轴
DROP PROCEDURE IF EXISTS pro_dim_date;
tudou@Gyyx
CREATE PROCEDURE pro_dim_date(IN bdate DATE,IN edate DATE)
BEGIN
DECLARE var DATE DEFAULT bdate;
DECLARE evar DATE DEFAULT DATE_ADD(edate,INTERVAL 1 DAY);
DECLARE bweek DATE;
DECLARE eweek DATE;
WHILE vardate_name
,
date_of_month
,
year_id
,
year_name
,
quarter_id
,
quarter_name
,
month_id
,
month_name
,
month_of_year_name
,
month_of_year_id
,
week_id
,
week_name
,
week_of_year_id
,
week_of_year_name
,
is_weekend
)
VALUES
(
DATE_FORMAT(var,'%Y%m%d'),
DATE_FORMAT(var,'%Y-%m-%d'),
DAYOFMONTH(var),
YEAR(var),
CONCAT(YEAR(var),'年'),
QUARTER(var),
CONCAT(QUARTER(var),'季度'),
DATE_FORMAT(var,'%Y%m'),
CONCAT(YEAR(var),'年',MONTH(var),'月'),
CONCAT(MONTH(var),'月'),
MONTH(var),
WEEKDAY(var),
CASE WEEKDAY(var) WHEN 0 THEN '星期一' WHEN 1 THEN '星期二' WHEN 2 THEN '星期三' WHEN 3 THEN '星期四' WHEN 4 THEN '星期五' WHEN 5 THEN '星期六' WHEN 6 THEN '星期日' END,
WEEKOFYEAR(var),
CONCAT('第',WEEKOFYEAR(var),'周(',MONTH(bweek),'月',DAY(bweek),'日~',MONTH(eweek),'月',DAY(eweek),'日'),
CASE WHEN WEEKDAY(var)>4 THEN '是' ELSE '否' END
);
SET var=DATE_ADD(var,INTERVAL 1 DAY);
END WHILE;
END
调用:
CALL pro_dim_date('2005-01-01','2013-12-31')
结果:
20131217 2013-12-17 17 2013 2013年 4 4季度 201312 2013年12月 12月 12 1 星期二 51 第51周(12月11日~12月23日 否 20131218 2013-12-18 18 2013 2013年 4 4季度 201312 2013年12月 12月 12 2 星期三 51 第51周(12月12日~12月24日 否 20131219 2013-12-19 19 2013 2013年 4 4季度 201312 2013年12月 12月 12 3 星期四 51 第51周(12月13日~12月25日 否 20131220 2013-12-20 20 2013 2013年 4 4季度 201312 2013年12月 12月 12 4 星期五 51 第51周(12月14日~12月26日 否 20131221 2013-12-21 21 2013 2013年 4 4季度 201312 2013年12月 12月 12 5 星期六 51 第51周(12月15日~12月27日 是 20131222 2013-12-22 22 2013 2013年 4 4季度 201312 2013年12月 12月 12 6 星期日 51 第51周(12月16日~12月28日 是 20131223 2013-12-23 23 2013 2013年 4 4季度 201312 2013年12月 12月 12 0 星期一 52 第52周(12月17日~12月29日 否 20131224 2013-12-24 24 2013 2013年 4 4季度 201312 2013年12月 12月 12 1 星期二 52 第52周(12月18日~12月30日 否 20131225 2013-12-25 25 2013 2013年 4 4季度 201312 2013年12月 12月 12 2 星期三 52 第52周(12月19日~12月31日 否 20131226 2013-12-26 26 2013 2013年 4 4季度 201312 2013年12月 12月 12 3 星期四 52 第52周(12月20日~1月1日 否 20131227 2013-12-27 27 2013 2013年 4 4季度 201312 2013年12月 12月 12 4 星期五 52 第52周(12月21日~1月2日 否 20131228 2013-12-28 28 2013 2013年 4 4季度 201312 2013年12月 12月 12 5 星期六 52 第52周(12月22日~1月3日 是 20131229 2013-12-29 29 2013 2013年 4 4季度 201312 2013年12月 12月 12 6 星期日 52 第52周(12月23日~1月4日 是
表结构:
CREATE TABLE dim_date
(
date_id
int(11) NOT NULL COMMENT '20110512',
date_name
varchar(16) DEFAULT NULL COMMENT '2011-05-12',
date_of_month
int(11) DEFAULT NULL COMMENT '12',
year_id
int(11) DEFAULT NULL COMMENT '2011',
year_name
varchar(16) DEFAULT NULL COMMENT '2011年',
quarter_id
int(11) DEFAULT NULL COMMENT '2',
quarter_name
varchar(16) DEFAULT NULL COMMENT '2季度',
month_id
int(11) DEFAULT NULL COMMENT '5',
month_name
varchar(16) DEFAULT NULL COMMENT '5月',
month_of_year_name
varchar(16) DEFAULT NULL COMMENT '2011年5月',
month_of_year_id
int(11) DEFAULT NULL COMMENT '201105',
week_id
int(11) DEFAULT NULL,
week_name
varchar(16) DEFAULT NULL,
week_of_year_id
int(11) DEFAULT NULL,
week_of_year_name
varchar(32) DEFAULT NULL,
is_weekend
enum('否','是') DEFAULT NULL COMMENT '是否周末',
PRIMARY KEY (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=MyISAM DEFAULT CHARSET=latin1
总结
以上所述是小编给大家介绍的Mysql时间轴数据 获取同一天数据的前三条,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对每日运维网站的支持! 如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!