2016-07-07 5 views
0

Table_1の値に基づいてTable_2を更新するためにいくつかのSQLをまとめようとしていますが、値が10進数であり整数ではないということです。だから私がやりたいものを上記の表を参照数値列で小数点以下を検索する方法

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 

は、キーに基づいてCol_Aに一致するように更新表2のCol_CですがCol_Aは小数ではなく整数である場合にのみ。

この場合、ブランケットの更新を行うことができます(テーブル2のすべてをテーブル1に合わせて更新することができます)が、実際のアプリケーションでは使用できません。小数点以下のものを絞り込む方法がわかりません。 Col_A/Cは数値(10,4)です。 Col B/Dはintです。

これはNetezzaにのみ記載されています.NZにはこれを簡単にするための特別な機能があるかどうかは不明です。

答えて

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); 
関連する問題