最近、記録システムを作成しました。毎日の獲得ポイント数とプレイ数をリストする必要があります。しかし、SQL を使用して日ごとにグループ化するにはどうすればよいでしょうか?まず、テーブルにタイムスタンプ (int(10)) があることを確認する必要があります。ここでは create_time を使用します。
次に、ステートメントの編集を開始します
FROM_UNIXTIME関数はタイムスタンプを日付に変換します
FROM_UNIXTIME( create_time, '%Y年%m月%d日' )
次に、この日付に従ってグループ化するだけです
select FROM_UNIXTIME( create_time, '%Y年%m月%d日' ) as day,count(*) as count,sum(score) as score from t_everygames where user_id =$userid group by FROM_UNIXTIME( create_time, '%Y年%m月%d日' ) order by 1 limit 0,6
同じこともできます。年、月、日、時、分ごとにグループ化されているのでとても便利ではないでしょうか。
データベースに 2018-1-30 などの文字列が格納されている場合は、date_format() 関数が使用されます。
関連する推奨事項:
mysqlのインデックスとFROM_UNIXTIMEの問題の詳細な説明
mysqlのインデックスとFROM_UNIXTIMEの問題の詳細な説明
FROM_UNIXTIMEのMYSQLタイムスタンプ関数のフォーマット
以上がMySQL の FROM_UNIXTIME は日ごとのクエリを実装しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。