STR (T-SQL)
Berlaku untuk: Titik akhir analitik SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Platform System (PDW)
SQL di Microsoft Fabric
Warehouse di Microsoft Fabric
Mengembalikan data karakter yang dikonversi dari data numerik. Data karakter dibenarkan kanan, dengan panjang dan presisi desimal tertentu.
Sintaksis
STR ( float_expression [ , length [ , decimal ] ] )
Catatan
Untuk melihat sintaks Transact-SQL untuk SQL Server 2014 (12.x) dan versi yang lebih lama, lihat Dokumentasi versi sebelumnya.
Argumen
float_expression
Adalah ekspresi perkiraan jenis data numerik (float) dengan titik desimal.
length
Adalah panjang total. Hal ini termasuk titik desimal, tanda, digit, dan spasi. Nilai default adalah 10.
desimal
Adalah jumlah tempat di sebelah kanan titik desimal. desimal harus kurang dari atau sama dengan 16. Jika desimal lebih dari 16 maka hasilnya dipotong menjadi enam belas tempat di sebelah kanan titik desimal.
Jenis Kembalian
varchar
Keterangan
Jika disediakan, nilai untuk parameter panjang dan desimal ke STR harus positif. Angka dibulatkan ke bilangan bulat secara default atau jika parameter desimal adalah 0. Panjang yang ditentukan harus lebih besar dari atau sama dengan bagian angka sebelum titik desimal ditambah tanda angka (jika ada). Float_expression pendek dibenarkan kanan dalam panjang yang ditentukan, dan float_expression panjang dipotong ke jumlah tempat desimal yang ditentukan. Misalnya, STR(12, 10) menghasilkan hasil 12. Ini dibenarkan dengan benar dalam tataan hasil. Namun, STR(1223, 2) memotong hasil yang diatur ke **. Fungsi string dapat ditumpuk.
Catatan
Untuk mengonversi ke data Unicode, gunakan STR di dalam fungsi konversi CONVERT atau CAST .
Contoh
Contoh berikut mengonversi ekspresi yang terdiri dari lima digit dan titik desimal menjadi string karakter enam posisi. Bagian pecahan dari angka dibulatkan ke satu tempat desimal.
SELECT STR(123.45, 6, 1);
GO
Berikut adalah hasil yang ditetapkan.
------
123.5
(1 row(s) affected)
Ketika ekspresi melebihi panjang yang ditentukan, string akan kembali **
untuk panjang yang ditentukan.
SELECT STR(123.45, 2, 2);
GO
Berikut adalah hasil yang ditetapkan.
--
**
(1 row(s) affected)
Bahkan ketika data numerik ditumpuk dalam STR
, hasilnya adalah data karakter dengan format yang ditentukan.
SELECT STR (FLOOR (123.45), 8, 3);
GO
Berikut adalah hasil yang ditetapkan.
--------
123.000
(1 row(s) affected)
Lihat Juga
CAST dan CONVERT (Transact-SQL)
FORMAT (T-SQL)
Fungsi String (Transact-SQL)