我正在使用 MySQL,我需要帮助将 COUNT(*) 用于表中的一系列值。
我有一个名为 PERSON 的表(在实时系统中,我希望有几十万或更多的记录)。
Name Result
a 100
b 130.45
c 182.96
d 65.45
e 199
f 245
Run Code Online (Sandbox Code Playgroud)
我需要查询表以找出属于给定范围的记录数。例如,有多少人属于 0-50 范围。范围值是动态的。所以预期的结果是这样的:
Range Count
0-50 0
51-100 2
101-150 1
151-200 2
201-250 1
Run Code Online (Sandbox Code Playgroud)
当然,我可以这样做:
SELECT COUNT(*) FROM PERSON WHERE RESULT <= 50
SELECT COUNT(*) FROM PERSON WHERE RESULT > 50 AND RESULT <= 100
Run Code Online (Sandbox Code Playgroud)
等等所有范围......
但是,必须有更好、更有效的方法来做到这一点吗?
mysql ×1