0

時間列と次の値を持つ pm_msg というテーブルがあります。

07-02-2013 18:11:00
27-01-2013 16:02:44
28-01-2013 10:30:26
30-01-2013 13:30:06

PDO SQL クエリの実行中に Unix タイムスタンプに変換したいと考えています。これは私がこれまで行ってきたことですが、エラーを返すようです。どうすればいいですか?

$sql = "SELECT * from pm_msg ORDER BY (strtotime(time)) ASC;";
4

3 に答える 3

1

strtotimeMySQL に存在しない場合、次のUNIX_TIMESTAMP関数が必要です。

$sql = "SELECT * from pm_msg ORDER BY (UNIX_TIMESTAMP(time)) ASC;";

ただし、並べ替えるためだけに UNIX タイムスタンプに変換する必要はありません。並べ替えは日付で正しく機能しますか? UNIX_TIMESTAMP多分あなたはそのSELECT部分に追加するつもりですか?

于 2013-02-07T18:40:09.180 に答える
0

UTC は GMT とほぼ同じです - DST は考慮されていません。

そのため、春と秋にはそれを考慮する必要があります。

ただし、SQL を使用して日付/時刻を unixtime に変換するには、STR_TO_DATEまたはUNIXTIMESTAMPを参照してください。

于 2013-02-07T18:48:59.300 に答える
0

現在varcharのようなものを使用している場合は、時間列をdatetimeとして設定する方が簡単です。

于 2013-02-07T20:19:49.197 に答える