Mysql 获取上次插入到该日期前10分钟之间的行
有人能给我指一下正确的方向吗。我需要检索从上次插入日期到该日期前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
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我刚加了一把小提琴