在嵌套查询mysql

时间:2019-07-31 07:51:01

标签: mysql

我正在尝试使用以下查询将NULL替换为0。 但是当结果不为NULL时,它仅获取不是必需的最大值。 我尝试删除max函数,但它返回NULL。

下面是查询。

select (select coalesce(max(QTIB_REQ_), 0) 
  from qb_requisitions_all 
 where QTIB_REQ_ IN ($Req_disabled_WA) 
   and CLIENT___BENCH___NON_BILLABLE IN ( 'Non Billable', 'Non-Billable', 'NonBillable') 
   and DATEDIFF(CURDATE(),TARGET_FILL_DATE) < 30 
   and DATEDIFF(CURDATE(),TARGET_FILL_DATE) > 0
   )

enter image description here

enter image description here

1 个答案:

答案 0 :(得分:0)

尝试在最大聚合内添加IFNULL

select (select max(IFNULL(QTIB_REQ_, 0))
from qb_requisitions_all 
where QTIB_REQ_ IN ($Req_disabled_WA) and CLIENT___BENCH___NON_BILLABLE IN ( 'Non 
 Billable', 'Non-Billable', 'NonBillable') 
 and DATEDIFF(CURDATE(),TARGET_FILL_DATE) < 30 
 and DATEDIFF(CURDATE(),TARGET_FILL_DATE) > 0