MSSQL Nvarchar Convert to Decimal
SQL üzerinde sorgulama yaparken nvarchar alanların decimal alanlara cast yapılması genel olarak sorunludur. Fakat bu işlemi aşağıdaki şekilde yapabilirsiniz.
1 | select convert(decimal(20,2),replace(tutar,',','.')) from uyetahakkuk |
gördüğünüz gibi öncelikle tutar alanından gelen “,” ile ayrılmış kuruş hanemizi “.” ile değiştiriyoruz ve ardından da convert işlemi ile alan tanımını decimal (20,2) olarak değiştiriyoruz.
1 | select sum(convert(decimal(20,2),replace(tutar,',','.'))) from uyetahakkuk |
En son olarak da sum işlemi ile yapılan dönüşümün doğruluğunu test etmiş oluyoruz.