mysql 查询不遵守日期参数

标签 mysql sql

我有一个问题如下:

SELECT   ch.id, ch.checkname, MAX(ch.CheckDate) AS CheckDate, 
         ch.SeverityNumber, md.CheckRef1, md.CheckSubject, 
         DATEDIFF(FROM_UNIXTIME( ch.CheckDate),CURDATE()) AS dateFromalarm 
FROM     checks ch, model md 
WHERE    ch.SysName='MV3R' 
AND      ch.environment='Z/OS' 
AND      md.CheckName=ch.CheckName 
AND      ***ch.CheckDate <=1569785343*** 
GROUP BY CheckName 
ORDER BY ch.CheckName DESC;

此查询应该为每个具有最新检查日期的检查名称返回一行。 checkname 不是唯一的,表中的每个 checkname 都有很多行。 问题是当我更改粗体部分中的数字时 (ch.CheckDate <=1569785343) 它根本不会改变结果.. 有什么想法吗?

最佳答案

让我们尝试隔离您的 max(checkdate) 以避免对多个列进行分组,我相信每个 checkname 您只有 1 个信息。

select ch.id
    , ch.checkname
    , t1.CheckDate
    , ch.SeverityNumber
    , md.CheckRef1
    , md.CheckSubject
    , datediff(from_unixtime(ch.CheckDate),CURDATE()) as dateFromalarm 
from 
    (select checkname, max(CheckDate)as CheckDate from checks where CheckDate <=1569785343 group by checkname) as t1
join checks ch on ch.checkname = t1.checkname
join model md on md.CheckName=ch.CheckName
where ch.SysName='MV3R' 
    and ch.environment='Z/OS'    
order by ch.CheckName desc;

关于mysql 查询不遵守日期参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58388040/

相关文章:

php - Mysql-PHP,基于变量字段的旋转/交叉表

python - 将数据库中的列与python代码中获取的变量进行比较

mysql - 这是检查时间戳/日期时间是否属于指定日期的最佳方法

python - Django:选择具有最大时间戳的值或加入同一个表

MySQL 左连接?

mysql - 错误 2003 (HY000) : Can't connect to MySQL server on 'localhost' (10061)-- MYSQL Command line connectivity

c# - PostgreSQL - 选择不同 - 按字段排序未在选择中返回

c# - SQL异常 : Invalid column name

mysql - 如果 id 值不存在另一个表,则 SQL 连接

java - 如何使用 JDO 和 DataNucleus 在 MySQL 5.5 中设置变量?