0
当表ERRORMESSAGE不包含满足“WHERE”条件的行时,IFNULL将失败,并且我得到null,而不是在IFNULL子句中提供的默认值。如何在没有行从表返回时返回默认值
select IFNULL(errorCode , 'NOERRORCODE') as "errorCode",
IFNULL(errorText , 'NOERROR') as "errorText" from
(select errorcode,
IFNULL((select errorText from STATIC_ERRORCODES a
where a.errorcode = b.errorcode), '') as errorText
from ERRORMESSAGE b where b.route_id = 'IPN4'
order by b.row_index)
当有ERRORMESSAGE没有行与ROUTE_ID = 'IPN4',输出应该是:
errorCode = NOERRORCODE
errorText = NOERROR
,但我得到空/空值。我该如何解决这个问题?
感谢的人。与一些修改,它的工作伟大的! – keanu
@keanu您需要将其标记为已接受,以便对其他人有所帮助。 – Ravi