我必须连接2列(例如FIRSTANME和LASTNAME) 我是这样做的:
FIRSTNAME || ' ' || LASTNAME`.
如果其中一个为null,但另一个不为null,则作为连接结果得到null 我想要以下行为
FIRSTNAME = null and LASTNAME = "Smith" ==>
FIRSTANME || ' ' || LASTNAME == ' Smith'.
如何在DB2中解决这个问题?
答案 0 :(得分:15)
使用coalesce
...
CONCAT( COALESCE(firstname,'') , COALESCE(lastname,'') )
或使用||
concat运算符
...
COALESCE(firstname,'') || COALESCE(lastname,'')
请注意,IBM建议使用关键字concat
,而不是||
运算符。
康卡特:http://publib.boulder.ibm.com/infocenter/dzichelp/v2r2/index.jsp?topic=%2Fcom.ibm.db2.doc.sqlref%2Ffconc.htm
合并:http://publib.boulder.ibm.com/infocenter/dzichelp/v2r2/index.jsp?topic=%2Fcom.ibm.db2.doc.sqlref%2Ffcoal.htm