2

データベースに UNIX タイムスタンプ フィールドがあります。

check_in_mktime
-------------
1345639136
1345639146
1345639176

タイムスタンプを使用して 2 日間のデータ (今日と昨日を含む) を取得する方法。

4

4 に答える 4

2

このクエリを試してください -

(編集)

SELECT * FROM table1
WHERE
  check_in_mktime >= UNIX_TIMESTAMP(CURDATE() - INTERVAL 1 DAY) AND
  check_in_mktime < UNIX_TIMESTAMP(CURDATE() + INTERVAL 1 DAY);
于 2012-08-23T07:06:06.343 に答える
1

次のようにできます。

 SELECT * 
 FROM your_table 
  WHERE Date(FROM_UNIXTIME(check_in_mktime)) between date(now() + interval 1 day) and date(now() - interval 1 day)
于 2012-08-23T07:04:58.423 に答える
1

以下を使用する必要があります。

  • NOW() => 現在の日時
  • FROM_UNIXTIME()=>タイムスタンプを日付に変換します
  • DATE()=> 日時データ型から日付を取得
  • DATE_SUB()=> 日付を減算

試す、

  SELECT * 
  FROM  your_table 
  WHERE DATE(FROM_UNIXTIME(check_in_mktime`))     -- converts timestamp to date
                   between DATE(NOW) and                    -- today
                           DATE_SUB(NOW(),INTERVAL 1 DAY)   -- yesterday
于 2012-08-23T07:07:54.890 に答える
0

将来の時間にチェックインがない場合、

SELECT * FROM table_name 
WHERE check_in_mktime >= UNIX_TIMESTAMP(CURDATE() - INTERVAL 1 DAY)
于 2012-08-23T07:06:55.977 に答える