我的工作中,我有账号,我已经使用CONCAT语句,以数1-11111,而不是11111MySQL的IFNULL CONCAT
有格式化的列的查询具有优先账号的列,但是该值为NULL,除非实际上有先前的账号。为了尽量只格式化帐号如果存在的话,我这样做:
IFNULL(CONCAT(LEFT(a.prior_acct, 1), '-', RIGHT(a.prior_acct, 5)), 0) AS prior_account
现在,这是正确格式化帐号是有,成1-11111格式。然而,NULL字段正在返回而不是0(同样可以接受的是一个空格)。
我试着在完整的concat语句周围添加一组额外的括号,看看是否会带走连字符但没有运气!
我错过了什么? TIA!
您的查询实际上是在小提琴上工作。 http://www.sqlfiddle.com/#!9/66a4a/2 –