私はMySqlの専門家ではありません。に基づいて、テーブル内のデータを範囲に分割しようとしていますaccount_no
。これは私のテーブルです。
mysql> select * from manager;
+----+-------+------------+
| id | name | account_no |
+----+-------+------------+
| 1 | John | 5 |
| 2 | Peter | 15 |
| 3 | Tony | 18 |
| 4 | Mac | 35 |
| 5 | Max | 55 |
| 6 | Smith | 58 |
+----+-------+------------+
ご覧のとおり、account_no
は正の数です。これらのレコードをaccount_noに基づいて 10 個のバッチに分割し、その範囲内のカウントを表示したいと考えています。
0から10
の間
の例では、 11から20
の間には1 つのレコードしかありません21から30
の間には2 つのレコードがあります レコードはありません* (したがって、これは省略されるべきです) *
など...実際、私は出力を得ることを望んでいますこのような。
+-------------+-----------+-------+
| range_start | range_end | count |
+-------------+-----------+-------+
| 1 | 10 | 1 | -> because there is 1 record between 1 and 10
| 11 | 20 | 2 | -> because there are 2 records between 11 and 20
| 31 | 40 | 1 | -> because there is 1 record between 31 and 40
| 51 | 60 | 2 | -> because there are 2 records between 51 and 60
+-------------+-----------+-------+
いくつかの組み合わせを試しましたが、結果はすべて 1 行しか表示されません。
誰でも私を助けることができますか?