Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 获取上次插入到该日期前10分钟之间的行_Mysql - Fatal编程技术网

Mysql 获取上次插入到该日期前10分钟之间的行

Mysql 获取上次插入到该日期前10分钟之间的行,mysql,Mysql,有人能给我指一下正确的方向吗。我需要检索从上次插入日期到该日期前10分钟的数据 这是我的代码,有没有更好的方法来编写 SELECT Datum, Value FROM tableX WHERE ItemFK = 109 AND Datum BETWEEN DATE_SUB( ( SELECT Datum FROM tableX WHERE ItemFK = 109 ORDER BY Datum DESC

有人能给我指一下正确的方向吗。我需要检索从上次插入日期到该日期前10分钟的数据

这是我的代码,有没有更好的方法来编写

SELECT Datum, Value
FROM tableX 
WHERE ItemFK = 109 
AND Datum BETWEEN 
DATE_SUB(
    (
        SELECT Datum 
        FROM tableX 
        WHERE ItemFK = 109 
        ORDER BY Datum DESC 
        LIMIT 1
    ), INTERVAL 10 MINUTE
)
AND (
    SELECT Datum 
    FROM tableX 
    WHERE ItemFK = 109 
    ORDER BY Datum DESC 
    LIMIT 1
) 
ORDER BY Datum DESC
我不能使用
DATE\u SUB(现在(),间隔10分钟)和NOW()
,因为我不知道上次插入的时间

另一种方法是通过两个查询。一个用于检索上一个日期,另一个用于在该日期前10分钟获取该日期的数据

编辑 添加了SQL Fiddle

谢谢

SELECT x.* 
  FROM tblTable x
  JOIN 
     ( SELECT MAX(datum) max_datum FROM tblTable ) y 
    ON x.datum >= y.max_datum - INTERVAL 10 minute;

考虑提供适当的DDL(和/或SQLFIDLE)以及所需的结果SET@Strawberry我刚加了一把小提琴