mysql - 请求在sql db中查找时间最接近的元素

标签 mysql date time

我试图让图片时间最接近实际时间。 我尝试改进我的请求,但我坚持我的 WHERE 子句:

*最后一次语法尝试:* SUBTIME(CURTIME(),INTERVAL 2 HOUR) 和 ADDTIME(CURTIME(),INTERVAL 2 HOUR) 之间的 TIME(heure_pdv)

然后我收到一个错误: ERREUR MYSQL numéro:1064 Type de cette erreur: 您的 SQL 语法有错误;

我哪里错了? 谢谢

nb:heure_pdv 列是时间类型。

该请求似乎有效,但我不确定它是否正确编写(尤其是“curtime()+8”:

                "SELECT 
                fichier,
                date_pdv,
                commune,
                pays,
                ib_medias.cover, 
                heure_pdv, 
                ib_series.titre AS titre_serie,
                ib_series.public AS aff_serie, 
                ib_series.id AS id_serie, 
                serie AS id_serie,
                ABS(TIMEDIFF(heure_pdv,CURTIME())) as differ ,
                ib_medias.titre AS titre_image 
                FROM ib_medias LEFT OUTER JOIN ib_series
                ON ib_medias.serie = ib_series.id 
                WHERE HOUR(heure_pdv)BETWEEN HOUR(CURTIME()) AND HOUR(CURTIME()+8)
                    AND ib_medias.site_cover > 0 
                    ORDER BY differ
                    LIMIT 0, 1";

最佳答案

addtime 是一个用于从一个日期时间值减去另一个日期时间值的函数。 查看链接:http://w3resource.com/mysql/date-and-time-functions/mysql-subtime-function.php

你应该使用 date_add :

    select * 
from photo 
where TIME(heure_pdv) BETWEEN date_add(CURTIME(),INTERVAL -2 HOUR) AND date_add(CURTIME(),INTERVAL 2 HOUR)

关于mysql - 请求在sql db中查找时间最接近的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43688980/

相关文章:

mysql - 如何联合并获得三个表的总和

php - mysql_query 中变量的通配符运算符

javascript - SAPUI5 DatePicker minDate 不工作

ios - 离线时准确的时间检测

MySQL 查询 - 连接/联合?

php - 无法使用 HTACCESS 创建漂亮的 url

java - 不使用日历和日期实例显示星期几

mySQL - 上个月的整个月

java - System.nanoTime 用于计算执行时间和性能影响

谁能看出这有什么问题(C 中与时间相关的函数)