Bagaimana cara mengubah string menjadi integer menggunakan SQL query pada SQL Server 2005?
sql
sql-server-2005
Rahul Vyas
sumber
sumber
select CASE WHEN ISNUMERIC('x') = 1 THEN CAST('x' AS INT) ELSE 0 END
IsNumeric()
dapat menghasilkan beberapa hasil buruk. Ini akan mengembalikan BENAR untuk string "-.", Yang masih akan menyebabkan kesalahan ketika Anda mencoba untuk melemparkannya ke nomor.Perlu diketahui juga bahwa ketika mengkonversi dari string numerik
'56.72'
ke INT Anda mungkin menemukan kesalahan SQL.Untuk menyiasati ini lakukan saja dua orang yang bertobat sebagai berikut:
STRING -> NUMERIC -> INT
atau
Saat menyalin data dari TableA ke TableB, konversi tersirat, jadi Anda tidak perlu konversi kedua (jika Anda senang membulatkan ke INT terdekat):
sumber
Dimulai dengan SQL Server 2012, Anda bisa menggunakan TRY_PARSE atau TRY_CONVERT .
sumber
Coba yang ini, itu berhasil untuk saya di Athena:
sumber