2017-04-11 2 views
0

몇 가지 지침이 있습니다. 나는 소수점을 제거하고 끝에 0을 붙여야하는 결과가 필요한 임금에 대한 선택을하고있다. 예에서 Money Decimal 쿼리 및 패드 0 제거 SQL Select

isnull(rtrim(convert(char(11), c2.wage)), space(11)) as 'DN62', 

나는 1384.61를 당겨하지만 사전에 13846100000.

덕분에 결과를해야하고 위.

+0

어떤 dbms을 사용하고 계십니까? –

+0

그냥 10000000으로 곱하십시오 – Lacrioque

+0

숫자가 오른쪽에서 왼쪽으로 읽히지 않는 한 이것은 매우 이상한 요구 사항처럼 보입니다. 10,000에서 100,000 사이의 급여 차이를 어떻게 알 수 있습니까? 나는 일반적으로 왼쪽에 0으로 패딩을 기대했다. –

답변

0

SQL Server를 사용한다고 가정합니다. 다음은 당신을 위해 일할 것입니다 :

SELECT LEFT(REPLACE(Cast(ISNULL(1384.61,0) as varchar), '.', '') + '0000000000',11) 

또 다른 방법은 필요한 0에 숫자를 곱하는 것입니다. 상황에 따라 이러한 솔루션 중 하나를 사용하십시오. 희망이 도움이 :)

+0

완벽! 고맙습니다. – Dizzle

+0

나는 당신을 도왔다 니 기쁘다 :) 대답으로 받아 들여 다른 사람들도 도울 수 있도록 도와주세요. –

+0

LEFT (REPLACE (캐스트) (ISNULL (c2.preinjwage, 0) varchar로), '.', ' ') +'0000000000 ', 11)을'DN62 '로 고맙습니다! – Dizzle