mysql找出两行相互插入

  • 本文关键字:两行 插入 mysql mysql sql
  • 更新时间 :
  • 英文 :


有没有办法找出两行插入在一起?

我有这样的桌子:

表1

 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"的DateTime保存为starttime。

在那之后,我检查"X,Z"何时像上面一样发生,而这个"X,Z"必须在时间"A,B"发生之后,并将"Z"时间保存为endtime。

然后我得到开始和结束时间之间的平均时间。

您可以使用自动设置的TIMESTAMP列,以便在插入时具有默认值CURRENT_TIMESTAMP。使用此列,您可以随时查看记录的创建时间。

CREATE TABLE `t1` (
    `date_created` TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

在大多数应用程序中,在具有时间相关信息(博客:文章、评论、用户;电子商务:产品、购物车、订单、发票、客户(的表上设置date_createddate_updated列是非常常见的做法。

CREATE TABLE `t1` (
    `date_created` TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    `date_updated` DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
);

最新更新