2016-07-07 3 views
0

Table_2의 값을 기반으로 Table_2를 업데이트하기 위해 일부 SQL을 함께 넣으려고하지만 캐치는 값이 정수가 아닌 소수 일 때만 사용한다는 것입니다. 숫자 열에서 십진수를 찾는 방법

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에 맞게 업데이트 표입니다.

이 경우 담요 업데이트를 수행 할 수 있음을 알고 있습니다. (표 1과 일치하도록 모든 표 2를 업데이트하십시오.) 실제 응용 프로그램에서는 작동하지 않을 것입니다. 단지 작동하지 않아도됩니다. 소수점 이하 자릿수를 줄이는 방법을 모르겠다. 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); 
관련 문제