我必须连接2列(例如FIRSTANME和LASTNAME).
我是这样做的:
我是这样做的:
FIRSTNAME || ' ' || LASTNAME`.
如果其中一个为null,但另一个不为null,则作为连接结果得到null.
我想要遵循以下行为
FIRSTNAME = null and LASTNAME = "Smith" ==> FIRSTANME || ' ' || LASTNAME == ' Smith'.
如何在DB2中解决这个问题?
解决方法
使用合并
... CONCAT( COALESCE(firstname,''),COALESCE(lastname,'') )
或者使用|| concat操作符
... COALESCE(firstname,'') || COALESCE(lastname,'')
请注意,IBM建议使用关键字concat而不是||操作符.
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