การปัดเศษและการตัดทศนิยม

SQL Server ระดับกลาง

Ginger Grant

Instructor

การปัดเศษตัวเลขใน T-SQL

ROUND(number, length [,function])
SQL Server ระดับกลาง

การปัดเศษตัวเลขใน T-SQL

SELECT DurationSeconds, 
ROUND(DurationSeconds, 0) AS RoundToZero, 
ROUND(DurationSeconds, 1) AS RoundToOne
FROM Incidents
+--------------------+------------------+------------------+     
|DurationSeconds     |RoundToZero       |RoundToOne        |     
+--------------------+------------------+------------------+     
|121.6480            |122.0000          |121.6000          |
|170.3976            |170.0000          |170.4000          |
|336.0652            |336.0000          |336.1000          |
...
+--------------------+------------------+------------------+
SQL Server ระดับกลาง

การปัดเศษทางซ้ายของจุดทศนิยม

SELECT DurationSeconds, 
ROUND(DurationSeconds, -1) AS RoundToTen, 
ROUND(DurationSeconds, -2) AS RoundToHundred
FROM Incidents
+--------------------+------------------+------------------+     
|DurationSeconds     |RoundToTen        |RoundToHundred    |     
+--------------------+------------------+------------------+     
|121.6480            |120.0000          |100.0000          |
|170.3976            |170.0000          |200.0000          |
|336.0652            |340.0000          |300.0000          |
...
+--------------------+------------------+------------------+
SQL Server ระดับกลาง

การตัดทศนิยม

ตัดทศนิยม

17.85 $\rightarrow$ 17

ปัดเศษ

17.85 $\rightarrow$ 18

SQL Server ระดับกลาง

การตัดทศนิยมด้วย ROUND()

ฟังก์ชัน ROUND() สามารถใช้ตัดทศนิยมได้ โดยระบุอาร์กิวเมนต์ที่สาม

ROUND(number, length [,function])
  • ตั้งค่าอาร์กิวเมนต์ที่สามเป็นตัวเลขที่ไม่ใช่ศูนย์
SQL Server ระดับกลาง

การตัดทศนิยมใน T-SQL

SELECT Profit, 
ROUND(DurationSeconds, 0) AS RoundingtoWhole, 
ROUND(DurationSeconds, 0, 1) AS Truncating 
FROM Incidents
+--------------------+------------------+------------------+    
|Profit              |RoundingtoWhole   |Truncating        |
+--------------------+------------------+------------------+  
|15.6100             |16.0000           |15.0000           |
|13.2444             |13.0000           |13.0000           |
|17.9260             |18.0000           |17.0000           |
...
+--------------------+------------------+------------------+  

การตัดทศนิยมจะตัดตัวเลขทิ้งหลังตำแหน่งที่ระบุทันที

SQL Server ระดับกลาง

มาฝึกกันเถอะ!

SQL Server ระดับกลาง

Preparing Video For Download...