SELECT SUM(stock_quantity) AS stock_quantity FROM tbl_goods_stock_v2 WHERE goods_sku=111 AND cus_id=0
SELECT SUM(stock_quantity) AS stock_quantity FROM tbl_goods_stock_v2 WHERE goods_sku=111 AND cus_id!=1
上述两条SQL语句。我想第一条查出的数据减除第二条查出的数据   现在想使用一条语句查出来。该如何改。求解

解决方案 »

  1.   

    select a.stock_quantity-b.stock_quantity from (
    SELECT SUM(stock_quantity) AS stock_quantity FROM tbl_goods_stock_v2 WHERE goods_sku=111 AND cus_id=0 ) a,(
    SELECT SUM(stock_quantity) AS stock_quantity FROM tbl_goods_stock_v2 WHERE goods_sku=111 AND cus_id!=1 ) b;
      

  2.   

    select sum(stock_quantity) from (
    SELECT SUM(stock_quantity) AS stock_quantity FROM tbl_goods_stock_v2 WHERE goods_sku=111 AND cus_id=0
    union all 
    SELECT -SUM(stock_quantity) AS stock_quantity FROM tbl_goods_stock_v2 WHERE goods_sku=111 AND cus_id!=1 ) a;
      

  3.   

    用用户变量
    SELECT SUM(stock_quantity) AS stock_quantity into @A FROM tbl_goods_stock_v2 WHERE goods_sku=111 AND cus_id=0;
    SELECT SUM(stock_quantity) AS stock_quantity into @B FROM tbl_goods_stock_v2 WHERE goods_sku=111 AND cus_id!=1;
    select @A-@B;
      

  4.   

    你好。这样可以的  数据查出来后面跟N个0.0000000用第二条语句是行的。
    还有个小问题 AND cus_id!=1 我想加上不等于0 但不能AND cus_id!=1,0这样写 只能AND cus_id!=1 AND cus_id!=0  请问有简写的方法吗? 
    谢谢!