ホームページ  >  記事  >  データベース  >  数据库查询SQL_MySQL

数据库查询SQL_MySQL

WBOY
WBOYオリジナル
2016-06-01 13:52:181156ブラウズ

1)现在的情况是这样的:有一个表 testtbl( id int, name varchar, level int, age int) ; 根据level的取值分为三个级别:高,中,低。

 现在要统计每个age中,高、中、和低级别的数目。即通过age作group by,但在每个age值内,还要按level取值统计各级别的记录数。

解决方案:

select age, (select count(*) from testtbl t2 where t2.age=t1.age and level )as low,

(select count(*) from testtbl t2 where t2.age=t1.age and level and level >=?)as mid,

(select count(*) from testtbl t2 where t2.age=t1.age and level >?)as high

from testtbl t1 group by age;

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。