MySQL查询-不在两个日期之间

时间:2020-10-17 08:43:47

标签: mysql

我正在尝试运行一个查询,以选择两个月内未登录的所有用户(last_access),insert_date不在今天的两个月内,而{{1} }不是2。

statuslast_access均为insert_date

这是我的代码;

datetime

但是似乎仍会选择在两个月内登录的用户。

我在做什么错了?

1 个答案:

答案 0 :(得分:0)

我不会为此使用between。一种不平等条件似乎更合适:

SELECT * 
FROM `wp_SDzEBA_pc_users`
WHERE 
    `last_access` < NOW() - INTERVAL 2 MONTH
    AND `insert_date` < NOW() - INTERVAL 2 MONTH
    AND `status` <> 2

基本上,这提供了在过去两个月中没有连接并且在两个月前插入的用户。

您可能还想处理从未连接过的用户(在这种情况下,我假设last_access将是null

SELECT * 
FROM `wp_SDzEBA_pc_users`
WHERE 
    (`last_access` IS NULL OR `last_access` < NOW() - INTERVAL 2 MONTH)
    AND `insert_date` < NOW() - INTERVAL 2 MONTH
    AND `status` <> 2
相关问题