池州北京网站建设,网站开发需要什么专业的人才,近三年网络营销案例,百度做的网站后台怎么进我是因为用了merge into语法#xff0c;然后on条件中判断的字段是可配置的#xff0c;这就导致了#xff0c;有时候判断条件多的情况下#xff0c;判断的字段会碰到有null值的情况#xff0c;如果on两边的字段都是null#xff0c;null和null对比就会导致结果为false…我是因为用了merge into语法然后on条件中判断的字段是可配置的这就导致了有时候判断条件多的情况下判断的字段会碰到有null值的情况如果on两边的字段都是nullnull和null对比就会导致结果为false采取的操作就全都是insert了碰到这种数据就永远都不会走到更新逻辑了。 解决方案 使用COALESCE函数COALESCE函数用于返回一组表达式中的第一个非NULL值将NULL值替换为其他非NULL值。例如
MERGE INTO target_table AS T
USING source_table AS S
ON (COALESCE(T.column_name, ) COALESCE(S.column_name, ))
WHEN MATCHED THEN-- 更新或插入操作
WHEN NOT MATCHED THEN-- 插入操作总结 以上方案是可以用但是存在一个问题时有可能类型会不匹配不过测试后发现基于目前我使用的数据库采用空字符串可以兼容大部分的类型默认值包括时间和数字所以用COALESCE(T.column_name, ‘’)就好了。