10 진수 (9,1)에서 10 진수 (7,4)로 캐스팅 할 때 데이터 손실이 발생할 수 있다는 오류 메시지가 표시됩니다. 이 오류는 sum(b.Column2...)
행에서 발생합니다.캐스팅 및 합계 오류
insert into @tempTable
select a.Column1, cast(sum(b.Column2 * c.Column3 * d.Column4) as decimal (7,4))
from dbo.Table1 as a
join dbo.Table2 as b on specified columns
join dbo.Table3 as c on specified columns
join dbo.Table4 as d on specified columns
나는 또한 시도 :
declare @tempColumn2 decimal(7,4);
select @tempColumn2 = cast(a.Column1 as decimal(7,4)) -- This gives me an unresolved error message.
insert into @tempTable
select a.Column1, sum(@tempColumn2 * c.Column3 * d.Column4)
from dbo.Table1 as a
join dbo.Table2 as b on specified columns
join dbo.Table3 as c on specified columns
join dbo.Table4 as d on specified columns
모든 팁은 감사하겠습니다
insert into @tempTable
select a.Column1, sum(b.Column2 * c.Column3 * d.Column4)
from dbo.Table1 as a
join dbo.Table2 as b on specified columns
join dbo.Table3 as c on specified columns
join dbo.Table4 as d on specified columns
나는 다음과 같은 시도! 감사!
왜 필요한가요 (7,4) - 이유가 있습니까? 그냥 (9,1) 또는 더 나은 아직 플로트를 사용할 수 있습니까? – JiggsJedi
'Column2','Column3','Column4'의 종류는 무엇인가 궁금합니다. –
그 이유는 'a.Column1' 열의 유형이 decimal (9,1) 일 것이기 때문이며 7보다 큰 정밀도를 가진 레지스트리가 있다면'7,4'라는 작은 유형으로 변환하려고합니다. 데이터 손실. –