2011-10-18 6 views
2

mysqlテーブルの行を繰り返し処理するので、各テーブル(x、y)に2つの値があり、それらの2つの値の間の間隔を調べる必要があります。Perlで多次元ハッシュをインクリメントする

たとえば、x = -21.1およびy = 52.4の場合、xは-30 ..- 20の間隔になり、yは50..60の間隔になります。

これらの間隔に基づいて、私はハッシュまたはその間隔の組み合わせ(-30 ..- 20と50..60)を含むものを1つ増分します。それから、私はmysqlテーブルの残りの行に行き、同じことをするので、間隔の組み合わせのすべての発生をカウントします。

36X36の組み合わせがあります(間隔は-180..180、10秒で区切られます)。私はこれが多次元ハッシュを使って行われると考えていますが、わかりません。誰か助けてくれますか?

答えて

3

MySQL自体ではどうでしょうか?

SELECT FLOOR(x/10)*10, FLOOR(y/10)*10, COUNT(*) 
FROM yourTable 
GROUP BY FLOOR(x/10), FLOOR(y/10) 
+0

ありがとうございました!これは私のPerlコードでかなりうまく実装できます:) – user1001715

関連する問題