简体   繁体   English

Sql Query 只查找最后一小时的数据

[英]Sql Query to find data only from last hour

I Have An table As Follow我有一张桌子如下

在此处输入图片说明

I need Data Only From Last Hour.我只需要最后一小时的数据。 Following query i tried using Reference.以下查询我尝试使用参考。

SELECT * FROM `user_otp` 
WHERE `date` = '$todate'
AND datetime > DATEADD(HOUR, -1, GETDATE())

I Dont Know This But I tried Using This Refferance我不知道这一点,但我尝试使用此引用

But It Not Work For Me .但它不适合我。 So Any Help Would be useful.所以任何帮助都会有用。

DATEADD and GETDATE() exist in SQL Server. SQL Server 中存在DATEADDGETDATE()

In MySQL, your conditions should be:在 MySQL 中,您的条件应该是:

WHERE `datetime` > DATE_ADD(NOW(), INTERVAL -1 HOUR)

While date = '$todate' condition is redundant and should be removed.date = '$todate'条件是多余的,应该删除。

Here's a documentation in MySQL DateTime .这是MySQL DateTime 中的文档。

Hi you can use DATE_SUB function for fetch last one hour data.您好,您可以使用 DATE_SUB 函数来获取过去一小时的数据。 I edited your code below -我在下面编辑了您的代码-

SELECT * FROM `user_otp` 
WHERE `date` = '$todate'
AND datetime >= DATE_SUB(NOW(),INTERVAL 1 HOUR);

Use DATE_SUB and NOW() functions in query在查询中使用 DATE_SUB 和 NOW() 函数

SELECT count(*) as lasthour_count 
FROM user_otp 
WHERE datetime >= DATE_SUB(NOW(),INTERVAL 1 HOUR);
datetime>=DATE_ADD(NOW(), INTERVAL -1 HOUR);
datetime>= DATE_sub(NOW(), INTERVAL 1 HOUR);

These are the two options you can use这是您可以使用的两个选项

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM