Hàm ROUND trong SQL Server

Bài viết này sẽ hướng dẫn chi tiết cho bạn cách sử dụng hàm xử lý số ROUND() trong SQL Server với cú pháp và những ví dụ cụ thể để dễ hình dung và nắm bắt hàm tốt hơn.

Mô tả

Hàm ROUND trong SQL Server được dùng để làm tròn số đến một vị trí thập phân nhất định.

Cú pháp

Để sử dụng hàm ROUND trong SQL Server, ta dùng cú pháp như sau:

ROUND(number, decimal, operation)

Tham số:

  • number: số được truyền để làm tròn
  • decimal: Số lượng vị trí thập phân được làm tròn đến. Giá trị này phải là số nguyên dương hoặc âm. Nếu tham số này bị bỏ qua, hàm ROUND sẽ làm tròn số thành 0 chữ số thập phân.
  • operation: tham số không bắt buộc. operation có thể là bất kỳ giá trị số nào khác. Khi nó là 0 (hoặc bị bỏ qua), hàm ROUND sẽ làm tròn kết quả thành số thập phân. Nếu operation là bất kỳ giá trị nào khác 0, hàm ROUND sẽ cắt kết quả thành số thập phân.

Nguyên tắc làm tròn số:

Khi bạn làm tròn số, hệ thống sẽ kiểm tra số ở vị trí (decimal + 1):

  • Nếu số đó lớn hơn 4 thì số ở vị trí decimal sẽ cộng thêm 1. Các số ở phía sau thành 0
  • Nếu số đó nhỏ hơn 5 thì số ở vị trí decimal sẽ giữ nguyên. Các số ở phía sau thành 0

Ví dụ chúng ta có một số thập phân là 423.3241

  • SELECT ROUND(423.3241, -2) có kết quả là 400.0000
  • SELECT ROUND(423.3241, -1) có kết quả là 420.0000
  • SELECT ROUND(423.3241, 0) có kết quả là 423.0000
  • SELECT ROUND(423.3241, 1) có kết quả là 423.3000
  • SELECT ROUND(423.3241, 2) có kết quả là 423.3200
  • SELECT ROUND(423.3241, 3) có kết quả là 423.3240
  • SELECT ROUND(423.3241, 4) có kết quả là 423.3241

Lưu ý:

  • Xem thêm hàm CEILINGFLOOR.
  • Hàm ROUND có thể được sử dụng trong các phiên bản sau của SQL Server: SQL Server 2017, SQL Server 2016, SQL Server 2014, SQL Server 2012, SQL Server 2008 R2, SQL Server 2008, SQL Server 2005.

Ví dụ

Hãy xem và khám phá một số ví dụ về hàm ROUND trong SQL Server.

Ví dụ 1: Làm tròn các số

SELECT ROUND(125.315, 2);
Result: 125.320 (kết quả được làm tròn vì tham số thứ 3 bị bỏ qua)

SELECT ROUND(125.315, 2, 0);
Result: 125.320 (kết quả được làm tròn vì tham số thứ 3 là 0)

SELECT ROUND(125.315, 2, 1);
Result: 125.310 (kết quả bị cắt bớt vì tham số thứ 3 khác 0)

SELECT ROUND(125.315, 1);
Result: 125.300 (kết quả được làm tròn vì tham số thứ 3 bị bỏ qua)

SELECT ROUND(125.315, 0);
Result: 125.000 (kết quả được làm tròn vì tham số thứ 3 bị bỏ qua)

SELECT ROUND(125.315, -1);
Result: 130.000 (kết quả được làm tròn vì tham số thứ 3 bị bỏ qua)

SELECT ROUND(125.315, -2);
Result: 100.000 (kết quả được làm tròn vì tham số thứ 3 bị bỏ qua)

Ví dụ 2: Ta có bảng dữ liệu sau

1. Lấy cột chuyên mục con và tỷ lệ của trang web, làm tròn tỷ lệ đến số thập phân thứ 2

SELECT Chuyenmuccon, ROUND(Tyle, 2) AS Tylemoi
FROM Quantrimang;

Result:
Chuyenmuccon Tylemoi
SQL Server 74.63
Facebook 58.99
Python 36.22
JavaScript 42.68
Google Chrome 94.88
Instagram 82.16

2. Lấy cột chuyên mục con và tỷ lệ của Lập trình trên trang web, làm tròn tỷ lệ đến phần số nguyên

SELECT Chuyenmuccon, ROUND(Tyle, 0) AS Tylemoi
FROM Quantrimang
WHERE Chuyenmuclon="Lap trinh";

Result:
Chuyenmuccon Tylemoi
SQL Server 75
Python 36
JavaScript 43

Bài trước: Hàm RAND trong SQL Server

Bài tiếp: Hàm SIGN trong SQL Server

Thứ Năm, 22/08/2019 10:59
52 👨 2.243