코드를 검토 및 사례 문이있다 expression <= 1.등의 반대<= 1
의 목적이 무엇인지 잘 모르겠습니다 1.. 이견있는 사람?
0소수점 이하 의 부족과 decimal데이터 유형 우선 순위보다 높은 데이터 유형 우선 순위가 있다는 사실 은 int필요하다면 암시 적으로 캐스트 될 것입니다.
코드를 검토 및 사례 문이있다 expression <= 1.등의 반대<= 1
의 목적이 무엇인지 잘 모르겠습니다 1.. 이견있는 사람?
0소수점 이하 의 부족과 decimal데이터 유형 우선 순위보다 높은 데이터 유형 우선 순위가 있다는 사실 은 int필요하다면 암시 적으로 캐스트 될 것입니다.
답변:
1.A는 NUMERIC(또는 DECIMAL동안) 상수, 1인 INTEGER상수. 경우에 따라 불필요하거나 바람직하지 않은 암시 적 유형 변환을 피하기 위해 상수의 데이터 유형을 명시 적으로 지정하는 것이 유용합니다.
예를 들어
create table t(f1 int);
insert into t values (2);
그런 다음 select 1/f1 from t반환 0( INTEGER), 동안 select 1./f1 from t반환 0.5( DECIMAL).
귀하의 예에서 비교의 왼쪽에는 DECIMAL열 이 있다고 가정 하고 DECIMAL상수를 명시 적으로 지정 하면 암시 적 유형 캐스트를 피함으로써 성능을 약간 향상시킬 수 있습니다.
1.마침표로 인해 리터럴을 정수 대신 숫자 (1,0)로 처리합니다 . 아마도 표현식의 데이터 유형과 일치시키기 위해 지정되었을 수도 있습니다 (모범 사례). 개인적1.0으로 그 경우에 지정하겠습니다 .