Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Şunlar için geçerlidir:SQL Server
Azure SQL Veritabanı
Azure SQL Yönetilen Örneği
Azure Synapse Analytics
Analiz Platformu Sistemi (PDW)
Microsoft Fabric'teki SQL analiz uç noktası
Microsoft Fabric'teki ambar
Microsoft Fabric'teki SQL veritabanı
Belirlenen uzunluk veya hassasiyete yuvarlanmış sayısal bir değer döndürür.
Transact-SQL söz dizimi kuralları
Sözdizimi
ROUND ( numeric_expression , length [ , function ] )
Arguments
numeric_expression
Tam sayısal veya yaklaşık sayısal veri türü kategorisinin bir ifadesi .
length
numeric_expression ne kadar hassas yapılacağı gösteriliyor. uzunluk , tinyint, küçükint veya int tiplerinin bir ifadesi olmalıdır. Uzunluk pozitif sayı ise, numeric_expressionuzunlukla belirtilen ondalık konum sayısına yuvarlanır. Uzunluk negatif bir sayı ise, numeric_expression ondalık noktanın sol tarafında uzunlukla belirtildiği şekilde yuvarlanır.
fonksiyon
Yapılacak operasyon türü.
fonksiyontinyint, smallint veya int olmalıdır. Fonksiyon atıldığında veya (varsayılan) değeri 0 olduğunda, numeric_expression yuvarlanır. Başka 0 bir değer belirtildiğinde, numeric_expression kesintiye çıkar.
Dönüş türleri
Aşağıdaki veri türlerini döndürür.
| İfade sonucu | Dönüş türü |
|---|---|
| tinyint | int |
| smallint | int |
| int | int |
| bigint | bigint |
| ondalık ve sayısal kategori (p, s) | ondalık (p, s) |
| para ve küçük para kategorileri | para |
| Float ve gerçek kategori | float |
Açıklamalar
ROUNDHer zaman bir değer döndürür. Eğer uzunluk negatif ve ondalık noktadan önceki basamak sayısından büyükse,ROUNDdöner0.Example Result ROUND(748.58, -4)0 ROUNDUzunluk negatif sayı olduğunda, veri türü ne olursa olsun yuvarlatılmış bir numeric_expression döndürür.Örnekler Result ROUND(748.58, -1)750,00 ROUND(748.58, -2)700.00 ROUND(748.58, -3)Aritmetik taşma ile sonuçlanır, çünkü 748.58 varsayılan olarak ondalık (5, 2) olur ve bu da döndüremez 1000.00.Dört haneli yuvarlamak için giridin veri türünü değiştirin. Örneğin:
SELECT ROUND(CAST (748.58 AS DECIMAL (6, 2)), -3);Sonuç kümesi aşağıdadır.
1000.00ROUNDSıfırdan yarısını yuvarlayarak (ticari yuvarlama olarak da bilinir) eşitliği bozar.Örnekler Result ROUND(1.15, 1)1.2 ROUND(-1.15, 1)-1.2
Örnekler
A. ROUND ve tahminler kullanın
Aşağıdaki örnek, son rakamın her zaman bir tahmin olduğunu gösteren ROUNDiki ifade gösterir.
SELECT ROUND(123.9994, 3),
ROUND(123.9995, 3);
GO
Sonuç kümesi aşağıdadır.
----------- -----------
123.9990 124.0000
B. ROUND ve yuvarlama yaklaşımları kullanın
Aşağıdaki örnek yuvarlamayı ve yaklaştırmaları göstermektedir.
SELECT ROUND(123.4545, 2),
ROUND(123.45, -2);
Sonuç kümesi aşağıdadır.
---------- ----------
123.4500 100.00
C. ROUND ile kesinti yapın
Aşağıdaki örnek, yuvarlama ile kesinti arasındaki farkı göstermek için iki SELECT ifadeyi kullanır. İlk ifade sonucu yuvarlar. İkinci ifade sonucu kısaltıyor.
SELECT ROUND(150.75, 0);
GO
Sonuç kümesi aşağıdadır.
151.00
SELECT ROUND(150.75, 0, 1);
GO
Sonuç kümesi aşağıdadır.
150.00