STR (T-SQL)

Berlaku untuk:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analytics AnalyticsPlatform System (PDW)Titik akhir analitik SQL di Microsoft FabricWarehouse di Microsoft Fabric

Mengembalikan data karakter yang dikonversi dari data numerik. Data karakter dibenarkan kanan, dengan panjang dan presisi desimal tertentu.

Konvensi sintaks transact-SQL

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)