我有个表假设名称为table1
有五个字段,分别假设为 id,c1,c2,c3,c4
除了id字段为int类型外,其它4个都是decimal(13,4)的,
我现在有一个更新语句,老是出问题,语句是这样的 update table1 set c4=sqrt(c1*c1+c2*c2+c3*c3);
这条语句肯定是没有语法错误的,我用jdbc连接执行的时候也不报错,可是计算的结果却是表里面的一部分数据计算了,而一部分却没有计算,搞了好久了,就是搞不懂这是为什么,(我的表里面的数据比较多,一般都有一二十万笔数据以上)。谢谢了。请大家帮帮我吧。
有五个字段,分别假设为 id,c1,c2,c3,c4
除了id字段为int类型外,其它4个都是decimal(13,4)的,
我现在有一个更新语句,老是出问题,语句是这样的 update table1 set c4=sqrt(c1*c1+c2*c2+c3*c3);
这条语句肯定是没有语法错误的,我用jdbc连接执行的时候也不报错,可是计算的结果却是表里面的一部分数据计算了,而一部分却没有计算,搞了好久了,就是搞不懂这是为什么,(我的表里面的数据比较多,一般都有一二十万笔数据以上)。谢谢了。请大家帮帮我吧。
将计算与否的记录贴出来看看,是否有NULL值
我如果重复的执行下面这条语句,一般执行个四到五次差不多能够保证全部执行。
update table1 set c4=sqrt(c1*c1+c2*c2+c3*c3) where c4 is null;
我想了很久就是搞不懂是为什么?
update table1 set c4=sqrt(c1*c1+c2*c2+c3*c3) where id=123;
这样执行一点问题都没有,很正常啊。
触发器、约束、关系?