mysql发现两行插入在彼此之后
有没有办法找出两行是在彼此之后插入的 我有这样的桌子: 表1mysql发现两行插入在彼此之后,mysql,sql,Mysql,Sql,有没有办法找出两行是在彼此之后插入的 我有这样的桌子: 表1 ID | column1 | column2 | --------------------------------------------- 1 | '2013-11-04 13:47:03' | A | 2 | '2013-11-04 13:47:03' | B | 3 | '2013
ID | column1 | column2 |
---------------------------------------------
1 | '2013-11-04 13:47:03' | A |
2 | '2013-11-04 13:47:03' | B |
3 | '2013-11-04 13:47:13' | Y |
4 | '2013-11-04 13:47:13' | X |
5 | '2013-11-04 13:47:20' | B |
6 | '2013-11-04 13:47:23' | Z |
7 | '2013-11-04 13:47:23' | X |
8 | '2013-11-04 13:47:26' | X |
9 | '2013-11-04 13:47:26' | Z |
10 | '2013-11-04 13:47:35' | B |
11 | '2013-11-04 13:47:38' | A |
12 | '2013-11-04 13:47:38' | B |
13 | '2013-11-04 13:47:40' | A |
14 | '2013-11-04 13:47:41' | X |
15 | '2013-11-04 13:47:41' | Z |
在上面的表格中,我想找出“A,B”发生在彼此之后的确切时间,比如“A”是“B”发生之后的第一行和下一行。
然后我将“A”的日期时间保存为starttime
在那之后,我检查“X,Z”何时发生,如上面所述,并且这个“X,Z”必须在时间“A,B”发生之后,并将“Z”时间保存为endtime
然后我得到开始时间和结束时间之间的平均时间。您可以使用自动
时间戳
列设置插入时的默认值当前时间戳
。通过此列,您始终可以看到记录的创建时间
CREATE TABLE `t1` (
`date_created` TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
在大多数应用程序中,非常常见的做法是在带有时间相关信息(博客:文章、评论、用户;电子商务:产品、购物车、订单、发票、客户)的表格上创建一个date\u
,并更新一个date\u列
请重新考虑你的桌子结构。在我看来这没什么意义。在这种情况下,基本使用ID和auto_increment
可能就足够了。@RobinCastlin yes table有autoincrement和ID,我现在修复这个表。
CREATE TABLE `t1` (
`date_created` TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
`date_updated` DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
);