2015-03-13 42 views
0

ApplicationDateRecordset如何使用MySQL

我把這個列(數據類型=時間戳)圖像從一個查詢我執行的MySQL的結果窗口中提取第二組的基於時間戳列記錄。我在這個查詢結果中有14條記錄,我試圖做的是刪除具有比第一組行(7)晚2分鐘的時間戳的記錄。任何建議/方向如何做到這一點,將不勝感激。希望這是有道理的。謝謝。

+0

因此,要描述查詢,您需要獲取最早7條記錄的MAX(timestamp),向其中添加2分鐘,並刪除該表中等於或晚於該值的記錄。對? – bloodyKnuckles 2015-03-13 19:31:13

+0

你提到的第一組是7行。這是一個固定值,總是第7排?或者你是否以動態的方式分組記錄? – bloodyKnuckles 2015-03-13 19:35:31

+0

種。正如你所看到的第二組行大約2分鐘後,但是它是第二組記錄有一個時間戳約2分鐘後。感謝您的回覆。 – Melinda 2015-03-13 19:36:11

回答

0

希望這有助於

SELECT t.* 
FROM table t 
WHERE t.time > DATE_ADD( SELECT MIN(t2.time) 
          FROM table t2 
       , INTERVAL 2 MINUTE) 
0

在MySQL中,刪除其時間戳大於或等於晚於第一七個記錄最新的時間戳2分鐘記錄:

DELETE FROM table t1 
WHERE t1.ApplicationDate >= DATE_ADD(
    (SELECT MAX(t1.ApplicationDate) FROM (SELECT ApplicationDate FROM table LIMIT 7) t1) 
    , INTERVAL 2 MINUTE 
) 

說明:

首先我們需要ge t爲第7條:

SELECT ApplicationDate FROM table LIMIT 7 

從我們需要得到MAX(最新的)日期和時間:

SELECT MAX(t1.ApplicationDate) FROM (...) 

我們可以再喂,作爲第一個參數爲DATE_ADD功能,2分鐘作爲第二個參數:

DATE_ADD((...), INTERVAL 2 MINUTE) 

這給了我們目標的時間戳作爲記錄刪除的條件,使用方法:

DELETE FROM table t1 WHERE t1.ApplicationDate >= (...)