id   val1    val2
 1     0        1
 2     1        1现在想查询 整个表里面   val1 值大于0 的记录数 和 val2值大于0 的记录数,结果如下:val1  val2
  1     2
谢谢!~

解决方案 »

  1.   

    select sum(if(val1>0,1,0)),sum(if(val2>0,1,0)) from tt
      

  2.   

    select count(if(val1>0,1,null)),count(if(val2>0,1,null)) from table
      

  3.   

    select sum(val1),sum(val2) from 整个表里面
      

  4.   

    select sum(if(val1>0,1,0),sum(if(val2>0,1,0) from table
      

  5.   


    sum 不是求数字之和吗? 为什么结果也是 求个数的?
      

  6.   

    如果val1>0,则1否0,计算有多少1即可