Saya menggunakan Sybase dan saya melakukan pemilihan yang mengembalikan saya kolom yang disebut "iftype", tetapi tipenya int dan saya perlu mengubahnya menjadi varchar. Ketika saya mencoba melakukan pemilihan tanpa fungsi konversi saya mendapatkan kesalahan ini:
Kode kesalahan 257, SQL state 37000: Konversi implisit dari tipe data 'VARCHAR' ke 'INT' tidak diizinkan. Gunakan fungsi CONVERT untuk menjalankan kueri ini.
Saya tidak tahu cara mengimplementasikan fungsi CONVERT
. Adakah yang bisa membantu saya?
sql
select
type-conversion
sybase
Murilo
sumber
sumber
Jawaban:
Gunakan fungsi konversi.
sumber
VARCHAR
untukINT
tetapi saya menjawab pertanyaannya, bukan pesan kesalahan.varchar
tempat yangint
diperlukan. Anda perlu menulis pernyataan SQL Anda yang sebenarnya agar kami dapat membantu Anda.varchar(11)
seandainya jumlahnya adalah angka negatif yang besar.Gunakan
STR
fungsinya:Argumen
float_expression
Merupakan ekspresi dari perkiraan tipe data numerik (float) dengan titik desimal.
panjangnya
Apakah total panjangnya. Ini termasuk titik desimal, tanda, angka, dan spasi. Standarnya adalah 10.
desimal
Apakah jumlah tempat di sebelah kanan titik desimal. desimal harus kurang dari atau sama dengan 16. Jika desimal lebih dari 16 maka hasilnya dipotong ke enam belas tempat di sebelah kanan titik desimal.
sumber: https://msdn.microsoft.com/en-us/library/ms189527.aspx
sumber
STR()
seharusnya jawaban yang benar, lebih sederhana dan lebih rentan kesalahan daripada alternatif.Anda dapat menggunakan
CAST
fungsi:sumber
Sebenarnya Anda tidak perlu menggunakan STR atau Konversi. Cukup pilih 'xxx' + LTRIM (1) melakukan pekerjaan. Kemungkinan, LTRIM menggunakan Konversi atau STR di bawah tenda.
LTRIM juga menghilangkan kebutuhan untuk menyediakan panjang dan biasanya standar 10 cukup baik untuk konversi integer ke string.
sumber
CONVERT(DATA_TYPE , Your_Column)
adalah sintaks untuk metode CONVERT dalam SQL. Dari fungsi konversi ini kita dapat mengonversi data Kolom yang ada di sisi kanan koma (,) ke tipe data di sisi kiri koma (,) Silakan lihat contoh di bawah ini.sumber