SQL Server 2012에는 TRY_CONVERT라는 변환 함수를 제공합니다.
이 TRY_CONVERT는 CONVERT와 비슷하지만,
CONVERT를 하지 못해도 오류를 내지 않고 NULL로 반환하는 특성을 가집니다.
실험 1.
CONVERT 이용
DECLARE @INPUT1 VARCHAR(100) DECLARE @INPUT2 VARCHAR(100) SET @INPUT1 = '100,2'; SET @INPUT2 = '100.3'; SELECT CONVERT(FLOAT,@INPUT1) AS INPUT1, CONVERT(FLOAT,@INPUT2) AS INPUT2 |
결과.
실험 2. TRY_CONVERT 로 실행
DECLARE @INPUT1 VARCHAR(100) DECLARE @INPUT2 VARCHAR(100) SET @INPUT1 = '100,2'; SET @INPUT2 = '100.3'; SELECT TRY_CONVERT(FLOAT,@INPUT1) AS INPUT1, TRY_CONVERT(FLOAT,@INPUT2) AS INPUT2 |
결과.
상세내역
http://msdn.microsoft.com/ko-kr/library/hh230993(v=sql.110).aspx
참고로 이것은 RC0 기준입니다.
물론 정확한 데이터 처리를 위해서는 검증이 필요하지만,
필요에 따라 사용 가능할 듯 합니다.