时间条件在sql查询中不起作用

时间:2017-09-19 06:13:19

标签: php mysql

我想与当前时间进行比较,并且数据库中存在rocords。

我的情况就像数据库中存在的记录应该小于当前时间。但它不起作用。

下面是代码和快照。

sch_time是字段名称

SELECT 
    rs.week_day, 
    rs.reportsch_tid, 
    rs.sch_time, 
    rs.reportsch_id, 
    rl.report_lid 
FROM 
    report_schedule rs 
    LEFT JOIN report_log rl ON(
        rs.reportsch_id = rl.reportsch_id
    ) 
WHERE 
    sch_time < '11:39:46' 
    AND (
        case WHEN(
            (rs.reportsch_tid = 2) 
            OR (
                rs.reportsch_tid = 3 
                AND rs.week_day = 2
            )
        ) then DATE(schedule_time)= '0000-00-00 00:00:00' else DATE(schedule_time)= '2017-09-19' END
    )

enter image description here

1 个答案:

答案 0 :(得分:0)

sch_time和&#39; 11:39:46&#39;被比较为字符串,可能是问题的原因。没有表定义很难说。应该使用时间戳或时间字段进行字段定义。如果你没有将它们转换为整数来进行正确的转换/评估,那就失败了。