Check out the article on MERGE statement in Informix. To enable to XPS customers to move to Informix and enhance productivity for Informix warehouse customers, we implemented MERGE statement in 11.50.xC5 and significantly enhanced its performance in 11.50.xC6. We had multiple customers doing both functional and performance testing during early validation program. The team that developed this feature has written a nice article with fully working examples (simply cut and paste into your stores_demo database).
The standard on MERGE standard stipulates we update a row ONLY once and not end up updating a newly inserted row within the same statement. In gist, manipulate a row only once in the statement, following the rules of set operations. We invented a new mechanism to handle the Halloween problem in MACH11 environment and have filed a patent on it. Below is the overview.