TO_CHAR를 사용하여 숫자를 문자로 변환하면 소수점 이상이 0일 경우 점(.)으로만 표시되어 변환이 된다. 아래와 같은 포맷(FORMAT) 옵션을 활용하여 변환된 수치 값의 형태를 결정할 수 있다. SELECT TO_CHAR(0.40, 'FM9990.99') STR , RTRIM(TO_CHAR(4, 'FM9990.99'),'.') STR2 --정수일경우 소수점표시 안함 (RTRIM) FROM DUAL;--STR : 0.4 --STR2 : 4 FM9990.99의 의미9는 해당 자리의 숫자를 의미하고 값이 없을 경우 소수점 이상은 공백으로 소수점 이하는 0으로 표시한다.0은 해당 자리의 숫자를 의미하고 값이 없을 경우 0으로 표시하며 숫자의 길이를 고정적으로 표시 할 때 주로 사용한다.FM은 좌우 9로 ..
오라클(Oracle)에서는 ISNUMERIC(숫자확인) 함수가 없다. 직접 사용자함수를 만들어서 사용하거나 제공하는 다른 함수를 사용하여 값이 숫자인지 확인을 할 수 있다.다음 세 가지 방법을 이용하여 숫자여부를 확인할 수 있다. 방법1. REGEXP_INSTR (정규식 문자열 검색 함수, Oracle 10g 이상 사용가능) - REGEXP_INSTR([숫자값],'[^0-9]') = 0 - 숫자가 아닌 값의 위치를 반환. 반환 값이 없으면 모든 문자가 숫자임방법2. TRANSLATE (문자열 치환 함수, Oracle 8i 이상 사용가능) - TRANSLATE([숫자값],'A1234567890','A') IS NULL - 숫자를 찾아 치환 후 남은 문자가 존재 시 숫자가 아님방법3. 사용자 정의 함수 생성..
SQL Server 2008, SQL Server 2012 문자(VARCHAR)를 숫자형식(타입)으로 변경하는 방법을 소개한다. numeric과 decimal 타입은 소수점 이하 값을 반올림한다. int, float 타입 보다는 numeric과 decimal 타입을 사용할 것을 권장하며 그 중에서도 decimal 타입을 사용할 것을 권장 한다고 한다. int : 정수 float : 부동소수점 numeric : 실수 decimal : 실수 (numeric 동일) numeric( [전체길이(소수점이하포함)], [소수점이하길이] ) decimal( [전체길이(소수점이하포함), [소수점이하길이] ) 문자 -> 숫자 변환 CONVERT( [숫자형], [값] ) SELECT CONVERT(int, '12') , C..