0

unix_timestamp は今日以降でSELECT5点お願いします。WHERE

: unix_timestamp (ここでは形式ではありません):

 15.08.2013
 18.08.2013
 21.08.2013
 27.08.2013
 30.08.2013

MySQL :SELECT * WHERE unix_timestamp is today or after today and ORDER BY unix_timestamp with LIMIT 0,5

MySQL Resultは unix_timestamp を持つ項目でなければなりません:

18.08.2013
21.08.2013
27.08.2013
30.08.2013
4

2 に答える 2

1

次のようなものを試すことができます:

SELECT * FROM FOO
   WHERE UNIX_TIMESTAMP >= NOW() ORDER BY UNIX_TIMESTAMP Limit 5;

NOW()現在の日付と時刻を返す

UNIX_TIMESTAMP 列に例のように日付形式のデータが含まれている場合は、代わりにNOW()を使用できますCURRENT_DATE()

すなわち

 SELECT * FROM FOO
    WHERE UNIX_TIMESTAMP >= CURRENT_DATE() ORDER BY UNIX_TIMESTAMP Limit 5;

CURRENT_DATE()現在の日付を返す

日付と時刻関数

于 2013-08-18T11:01:16.157 に答える
1

これは実際に動作するはずです ( DEMO ):

SELECT FROM_UNIXTIME(unix_timestamp, '%m.%d.%Y') as `Date` FROM dates WHERE FROM_UNIXTIME(unix_timestamp, '%m.%d.%Y') >= DATE_FORMAT(NOW(), '%m.%d.%Y') ORDER BY unix_timestamp Limit 5;

column という名前を付けたのでunix_timestamp、日付は実際にはその形式で保存されていると思います (例: 1376825624)。

unix_timestampMySQL には という関数が既に存在するため、 の名前を変更することを検討することに注意してくださいUNIX_TIMESTAMP()

于 2013-08-18T11:31:27.847 に答える