2016-06-16 6 views
1

나는 약국 약품 가격 데이터로 작업하고 있습니다. 다음과 같은 형식으로 내가 참조 약물을 사용하고 데이터 자원 :varchar를 10 진수 형식으로 변환하는 방법? SQL 서버

  • NDC : 0002831517
  • AWP : 001539667

AWP 값이 형식이 있습니다

  • 진수를, 4 자리 이전, 5 자리 이후

그래서 나는보고있을 것입니다. 참조 :

  • AWP : 0015.39667

내가 CONVERT을 사용할 때마다, 나는 다음과 같은 오류 얻을 : 어떤 도움을 크게 감상 할 수

Arithmetic overflow error converting nvarchar to data type numeric.

합니다. 고맙습니다!

편집 : 내 SQL 로직 :

SELECT TOP 1000 NDC10, 
       CONVERT(DECIMAL (9, 5), AWPUPRICE) 
FROM [TEST].[dbo].[NDC_CODES] 
+2

SELECT CAST (LEFT (@ 값을, 4) + + RIGHT (@value, 5) AS DECIMAL (9,5)) – gotqn

+1

"CONVERT를 사용할 때마다 ..."- 우리는 그 이상의 컨텍스트가 필요합니다. 어쩌면 당신이하려는 것을 보여주는 완전한 * 코드 샘플 일 수 있습니다. –

+0

Convert (bigint, AWP) * 0.00001? –

답변

1

당신이 시도 할 수 있습니다 : '.'

SELECT TOP 1000 NDC10, CAST(LEFT(AWPUPRICE,4) + '.' + RIGHT(, 5) AS DECIMAL(9,5)) 
FROM [TEST].[dbo].[NDC_CODES]