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 を取得したいと考えています。彼らがログインすると、日時が 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 に答える