1

我有一个简单的查询:

    $query1="SELECT * FROM wp_users WHERE now() < (last_login + INTERVAL 6 month)";
$result1=mysql_query($query1) or die(mysql_error());

while($rows=mysql_fetch_array($result1)){  

    $inactive_accounts[] = $rows['ID'];
}

我希望它拉入所有 6 个月未登录其帐户的人的 user_id。我已经设置好了,所以当他们登录时,它将 datetime 插入 last_Login 列。

我只是想知道这个 SELECT 查询是否正常,因为我无法测试它。这个会显示6个月未登录的人的ID吗?

谢谢!

4

3 回答 3

4

你在正确的路线上。你可能需要的是MySQL 中的DATE_SUB函数,所以

SELECT *
FROM wp_users
WHERE last_login < DATE_SUB( NOW(), INTERVAL 6 MONTH )
于 2012-04-04T15:10:53.320 回答
3
SELECT * FROM wp_users WHERE last_login < date_sub(now(), INTERVAL 6 month)
于 2012-04-04T15:06:58.740 回答
0

要测试您的代码是否有效,请手动调整用户的 last_login 字段并将其设置为 > 6 个月前。当然是在你的开发环境中!

于 2012-04-04T15:20:56.547 回答