SELECT SUM(cardprice)cardprice  ,cardstate , cardtypeid FROM TB GROUP BY cardtypeid ,cardstate 
再将统计值相加是什么意思??

解决方案 »

  1.   

    SELECT
        SUM(CASE WHEN cardstate=1 THEN 1 ELSE 0 END)
        +
        SUM(CASE WHEN cardstate=0 THEN 1 ELSE 0 END)
    FROM view_sale
    WHERE cardtypeid =1001
      

  2.   

    比如我先获得卡号是1001并且是未销售的所有记录数字 如下
    select  count(*) from view_sale  where cardtypeid =1001 and cardstate=0
    再获得卡号是1001并且是已经销售的所有记录数字 如下
    select  count(*) from view_sale  where cardtypeid =1001 and cardstate=1
    然后再将未销售的和已经销售的记录数字相加最好是能用一句sql语句实现。。但不知道该怎么写了。大家快给我出出注意啊!
      

  3.   

    SELECT
        SUM(CASE WHEN cardstate=1 THEN 1 ELSE 0 END) AS 售出数量,
        SUM(CASE WHEN cardstate=0 THEN 1 ELSE 0 END) AS 未售出数量,
        COUNT(*) AS 总数量
    FROM view_sale
    WHERE cardtypeid =1001
      

  4.   

    SELECT count(*)
    from view_sale 
    WHERE cardtypeid =1001 and (cardstate=0 or cardstate=1)