私のテーブルの2つの日付間の変更の割合を取得しようとしています。私は一緒にデータを次の形式にしましたが、日付の違いを得るために過去に移動することはできません。MySQL:複数のエントリの2つの日付の間の変更の割合を取得
電流出力:
+------------+---------+--------+
| day | player | score |
+------------+---------+--------+
| 2016-12-20 | player1 | 69253 |
| 2016-12-15 | player1 | 61662 |
| 2016-12-15 | player2 | 309180 |
| 2016-12-20 | player2 | 318112 |
| 2016-12-15 | player3 | 1525 |
| 2016-12-20 | player3 | 1405 |
+------------+---------+--------+
予想される出力:私は私のクエリに追加することができますどのような
SET @maxDate = (SELECT DATE(from_unixtime(max(timestamp) /1000)) from city_data);
SET @minDate = date_sub(@maxDate, INTERVAL 5 day);
SELECT
day,
player,
sum(score) as score
FROM
(
SELECT
DATE(FROM_UNIXTIME(cd.timestamp/1000)) as day,
player,
score
FROM
city_data cd
WHERE
DATE(FROM_UNIXTIME(cd.timestamp/1000)) IN(@minDate, @maxDate)
) t
GROUP BY
day, player
:
+---------+------------+------------+------------+----------+---------------+
| Player | startDate | endDate | startScore | endScore | percentChange |
+---------+------------+------------+------------+----------+---------------+
| player1 | 2016-12-15 | 2016-12-20 | 61662 | 69253 | 0.8904 |
| player2 | 2016-12-15 | 2016-12-20 | 309180 | 318112 | 0.9719 |
| player3 | 2016-12-15 | 2016-12-20 | 1525 | 1405 | -0.0854 |
+---------+------------+------------+------------+----------+---------------+
私はこの時点に取得しています望ましいouを得るためにtput?私は私のクエリの結果が一時テーブルに入れてそこから使用できると仮定できると思いますか?
編集:要求ごと元のテーブルが(表は数万行で、これは単なる一例であることに注意)
---------------+--------------+-------+-----+
| timestamp | player | score | id |
+---------------+--------------+-------+-----+
| 1477173600000 | player1 | 66 | 1 |
| 1477173600000 | player1 | 654 | 2 |
| 1477173600000 | player1 | 3 | |
| 1477173600000 | player2 | 238 | 4 |
| 1477173600000 | player2 | 9123 | 5 |
| 1477287798758 | player1 | 69 | 6 |
| 1477287798758 | player1 | 678 | 7 |
| 1477287798758 | player1 | 8 | |
| 1477287798758 | player2 | 698 | 9 |
| 1477287798758 | player2 | 11000 | 10 |
+---------------+--------------+-------+-----+
パーセント変化が正しくないようです – GurV
これは私が手作業で行った出力の例ですが、オフになっている可能性があります。オフになっていると思われる値の例を教えてください。それにもかかわらず、私は視聴者が私が達成しようとしていることのアイデアを得ることができると確信しています。 編集:私はそこに後方に%を持っていました。 –
元のテーブルを表示できますか? –