0

我将在我的选择查询中使用 IFNULL 检查

我想这样执行,当 sum 为空时打印 0

这是我的全部查询

SELECT 

    IFNULL(SELECT SUM(TOT_SALES_PRICE) FROM TB_DEALER_SALES_MNG WHERE DEALER_SEQ = 7 AND DATE_FORMAT(SALES_DATE, '%Y%m' )= DATE_FORMAT(NOW(), '%Y%m') ,0) 
    )AS TOT_SALES_PRICE

有语法错误,但我不知道

这是我没有 IFNULL 的查询,它工作得很好请告诉我

SELECT 
    (SELECT SUM(TOT_SALES_PRICE) FROM TB_DEALER_SALES_MNG WHERE DEALER_SEQ = 7 AND DATE_FORMAT(SALES_DATE, '%Y%m' )= DATE_FORMAT(NOW(), '%Y%m')
    )AS TOT_SALES_PRICE 
4

1 回答 1

1
SELECT COALESCE(SUM(tot_sales_price),0)) tot_sales_price 
  FROM tb_deaker_sales_mng
 WHERE dealer_seq = 7 
   AND DATE_FORMAT(sales_date, '%Y%m')=DATE_FORMAT(NOW(), '%Y%m')

或者:

SELECT SUM(COALESCE(tot_sales_price,0)) tot_sales_price 
  FROM tb_deaker_sales_mng
 WHERE dealer_seq = 7 
   AND DATE_FORMAT(sales_date, '%Y%m')=DATE_FORMAT(NOW(), '%Y%m')
于 2014-07-30T15:41:13.630 回答