我正在运行以下查询,但似乎无法使 datediff()
过滤器工作。查询执行成功,但即使我将 datediff()
更改为不同的值,我仍然会得到相同的结果。
SELECT project_id
, google_rank
, COALESCE(
( SELECT google_rank
FROM eig_ranking mi
WHERE mi.project_id = m.project_id
ORDER BY project_id limit 1
)
, 0) - google_rank AS movement
, keyword
, domain
FROM eig_ranking m
WHERE (DATEDIFF(rank_date, NOW())) / 7 <= 12
AND google_rank != 0
ORDER BY movement DESC
最佳答案
感谢您的回复。我想到了。我不确定它是否是 MYSQL 错误或文档错误,但将 datediff() 函数中的变量交换为 DATEDIFF(NOW(), rank_date) 使其适用于我的所有查询并且结果都是正确的
关于MySQL datediff() 函数总是返回相同的结果,无论其值如何,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12338308/