SQL(NZ)如何在数字列中查找小数

时间:2016-07-07 15:42:29

标签: sql netezza

我试图将一些SQL放在一起根据Table_1的值更新Table_2,但问题是它只是在值是小数而不是整数时。

Table_1                      Table_2

Col_A  Col_B  Key          Col_C  Col_D  Key
3.2     6     331            3      6    331
5       8     332            5      8    332
1.12    9     333            1      9    333
6       10    334            6      10   334

因此,参考上面的表格,我想要做的是更新表2的Col_C以匹配基于密钥的Col_A,但前提是Col_A是小数而不是整数。

我知道你可以在这种情况下进行全面更新(更新所有表2以匹配表1)但是在实际应用程序中我使用它不起作用我只需要为小数点做,只是不知道如何缩小它们。 Col_A / C是数字(10,4)。 Col B / D是int。

请注意,这是在Netezza,不确定新西兰是否有一些特别的东西可以让你更容易做到这一点。

1 个答案:

答案 0 :(得分:1)

这需要使用一些数学函数,尤其是floor()

update table_2
    set . . .
from table_1
where table_2.col_C = floor(table_1.col_A) and
      table_1.col_A > floor(table_1.col_A);