mySQL SELECT时间戳(now() - 3000);

The*_*per 15 mysql timestamp

我正在尝试进行一个查询,根据时间戳返回结果,比如间隔30分钟.

所以我想到的是我能做到的

SELECT * FROM x WHERE ts BETWEEN timestamp(now()-3000) AND timestamp(now())
Run Code Online (Sandbox Code Playgroud)

因此,这将在最后30分钟内查询x中的所有内容以及ts列中的时间戳.

但是,这只能在now()经过yyyy-mm-dd HH:30:00标记后才能工作,因为它会导致NULL之前的任何时候......这很麻烦,我不明白为什么它不会只是从小时减去friggin分钟!

请帮帮我!我在最近30分钟内找不到任何其他方法进行查询,这就是我想要实现的目标.

最好的祝福,

约翰

mlu*_*bke 42

SELECT * FROM x WHERE ts BETWEEN timestamp(DATE_SUB(NOW(), INTERVAL 30 MINUTE)) AND timestamp(NOW())
Run Code Online (Sandbox Code Playgroud)


ype*_*eᵀᴹ 12

SELECT * FROM x WHERE ts BETWEEN NOW() - INTERVAL 30 MINUTE AND NOW();
Run Code Online (Sandbox Code Playgroud)