気象データを表示するjqueryベースのWebグラフを作成しています。データはAjax - > PHP - > MySQL経由でロードされます。 MySQLデータベースには、過去10年間の1分ごとのさまざまなパラメータのレコードが含まれています(膨大なレコード)。私は、ユーザーがカスタムの日付範囲のグラフを生成できるようにしたいが、データ範囲の数を数日以上に制限する。つまり、1週間分のデータを照会すると、PHPコードでは1時間あたり1つのデータ値しか返されません。
平均化やサーバー側の処理をしたくない - mysqlからn番目のレコードのみを取得したい - 管理可能な量のデータが得られるようにする。MySQLクエリの日付ベースのn番目のレコード
私の問題は、データベースにレコード番号フィールドがなく、データベースのフォーマットを変更できないということです。実際の日付の値に基づいてこれを実行できる方法はありますか? unixタイムスタンプへのキャストと同様に、日付がある数値で割り切れる場合はレコードを選択するだけですか? (私は、一定の数のポイントを引き出すために、時間範囲の長さに基づいて数を計算する)
これを行うには良い方法はありますか?時間間隔を均等に選択できる解決策があれば理想的です。 (つまり、5分、10分、1時間、5時間など)
EDIT:フィールドはMySQLのdateTime形式です!説明を求めてくれてありがとう!句
SELECT * FROM WEATHER WHERE MOD(UNIX_TIMESTAMP(Time), Divisor) = 0
は除数で割り切れる回あなたレコードだけを取得するWHERE
データベースに格納されている時間はどの形式ですか(mysql datetime列かunix timestamp列か)。その列は索引付けされていますか? – Arjan
テーブルの詳細を追加できますか? –
申し訳ありませんコメントありがとう。これはMySQLのdatetimeカラムです! –