期間を指定したSQL(〜秒以内のレコードを対象にする)
〜秒以内のレコードを対象にする where 節. 直接文字で入力するとDBサーバーと呼び出し側の時刻設定が違った場合に,予期しない結果が帰ったりするので,どちらを使用するかは考えよう.
SELECT DISTINCT userid FROM user_data WHERE lastupdate < NOW() AND lastupdate > SUBDATE(NOW(), INTERVAL 1800 SECOND); SELECT DISTINCT userid FROM user_data WHERE lastupdate < NOW() AND lastupdate > "2011-03-30 17:**:00";
ちなみにTIMESTAMPDIFFを使用すると遅いです.例えばこう
TIMESTAMPDIFF(SECOND, lastupdate, NOW()) BETWEEN 0 AND 86400