关于数据库(MYSQL)时间段的拆分问题,怎么样编程实现?

关于数据库(MYSQL)时间段的拆分问题,怎么样编程实现?,第1张

可以看下时间函数

对日期时间进行加减法运算

 (ADDDATE()和SUBDATE()是DATE_ADD()和DATE_SUB()的同义词,也可以用运算符 和-而不是函数

 date是一个DATETIME或DATE值,expr对date进行加减法的一个表达式字符串type指明表达式expr应该如何被解释

 [type值 含义 期望的expr格式]:

 SECOND 秒 SECONDS

 MINUTE 分钟 MINUTES

 HOUR 时间 HOURS

 DAY 天 DAYS

 MONTH 月 MONTHS

 YEAR 年 YEARS

 MINUTE_SECOND 分钟和秒 "MINUTES:SECONDS"

 HOUR_MINUTE 小时和分钟 "HOURS:MINUTES"

 DAY_HOUR 天和小时 "DAYS HOURS"

 YEAR_MONTH 年和月 "YEARS-MONTHS"

 HOUR_SECOND 小时, 分钟, "HOURS:MINUTES:SECONDS"

 DAY_MINUTE 天, 小时, 分钟 "DAYS HOURS:MINUTES"

 DAY_SECOND 天, 小时, 分钟, 秒 "DAYS HOURS:MINUTES:SECONDS"

 expr中允许任何标点做分隔符,如果所有是DATE值时结果是一个DATE值,否则结果是一个DATETIME值)

 如果type关键词不完整,则MySQL从右端取值,DAY_SECOND因为缺少小时分钟等于MINUTE_SECOND)

 如果增加MONTH、YEAR_MONTH或YEAR,天数大于结果月份的最大天数则使用最大天数)

mysql>SELECT "1997-12-31 23:59:59" INTERVAL 1 SECOND

->1998-01-01 00:00:00

mysql>SELECT INTERVAL 1 DAY "1997-12-31"

->1998-01-01

mysql>SELECT "1998-01-01" - INTERVAL 1 SECOND

->1997-12-31 23:59:59

mysql>SELECT DATE_ADD("1997-12-31 23:59:59",INTERVAL 1 SECOND)

->1998-01-01 00:00:00

mysql>SELECT DATE_ADD("1997-12-31 23:59:59",INTERVAL 1 DAY)

->1998-01-01 23:59:59

mysql>SELECT DATE_ADD("1997-12-31 23:59:59",INTERVAL "1:1" MINUTE_SECOND)

->1998-01-01 00:01:00

mysql>SELECT DATE_SUB("1998-01-01 00:00:00",INTERVAL "1 1:1:1" DAY_SECOND)

->1997-12-30 22:58:59

mysql>SELECT DATE_ADD("1998-01-01 00:00:00", INTERVAL "-1 10" DAY_HOUR)

->1997-12-30 14:00:00

mysql>SELECT DATE_SUB("1998-01-02", INTERVAL 31 DAY)

->1997-12-02

mysql>SELECT EXTRACT(YEAR FROM "1999-07-02")

->1999

mysql>SELECT EXTRACT(YEAR_MONTH FROM "1999-07-02 01:02:03")

->199907

mysql>SELECT EXTRACT(DAY_MINUTE FROM "1999-07-02 01:02:03")

->20102

TO_DAYS(date)

 返回日期date是西元0年至今多少天(不计算1582年以前)

mysql>select TO_DAYS(950501)

->728779

mysql>select TO_DAYS('1997-10-07')

->729669

FROM_DAYS(N)

 给出西元0年至今多少天返回DATE值(不计算1582年以前)

mysql>select FROM_DAYS(729669)

->'1997-10-07'

本文来自CSDN博客,转载请标明出处:http://www.cnblogs.com/zeroone/archive/2010/05/05/1727659.html

用mysql的表分区功能(逻辑上还是一个表,对程序来说是透明的),通过分区函数可实现自动分表。如果想实现根据数据每月或每周动态的再分区,可以写一个存储过程实现分区调整逻辑,最后写一个mysql event(自动化作业)按周期调用这个存储过程就行了。

php的话。。。

explode("&",日期字符串)

会返回一个数组。。。[0]就是你第一个发布时间,[1]就是你更新时间。。。

asp的话。。。

Split(日期字符串,"&")

也是返回一个数组。。。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/8719751.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-20
下一篇 2023-04-20

发表评论

登录后才能评论

评论列表(0条)

保存