select count(year1) from age where year1<20 and year1>15;tmp改为age....上面写错了。

解决方案 »

  1.   

    select count(year1) from age where (year1<=20 and year1>15) or (year1>20 and year1<=25) or (year1>25 and year1<30) or (.................);
      

  2.   

    select count(year1) from age where (year1<=20 and year1>15) or (year1>20 and year1<=25) or (year1>25 and year1<30) or (.................);
    我觉得这个方法没办法获取到各个年龄段的总数吧 
    应该还是要用存储过程方法的好
      

  3.   

    有啊最近研究mysql有点入门我写一个吧
    SELECT count( * ) AS total, CEILING( age/5 ) AS agelevel
    FROM `age` 
    WHERE 1 
    GROUP BY agelevel得出就是按年龄段的
    比如agelevel 3表示 10到15
    agelevel     5表示 20到25
    娃哈哈,不错吧
    发现mysql也挺强大的,用好的sql语法,你可以省了很多程序
      

  4.   

    SELECT count( * ) AS total, CEILING( age/5 ) AS agelevel
    FROM `age` 
    WHERE 1 
    GROUP BY agelevelwhere 1是什么意思啊?