Hàm ROUND trong SQL Server
Hàm ROUND trong SQL Server khá phổ biến trong lập trình. Dưới đây là những điều bạn cần biết về cách dùng ROUND trong SQL Server.
Hàm là một khái niệm phổ biến trong lập trình và hầu hết mọi ngôn ngữ đều có các hàm khác nhau với chức năng riêng. SQL Server cũng không ngoại lệ.
Khi tìm hiểu về SQL Server, bạn cần bắt đầu từ những khái niệ cơ bản nhất, bao gồm nó là gì, độ phổ biến và tính ứng dụng. SQL Server cũng có rất nhiều hàm. Và ROUND là một trong số đó.
Hàm ROUND được dùng để làm tròn trong SQL Server. Bạn sẽ dùng nó mỗi khi cần làm tròn một số cụ thể sang số thập phân được chỉ định.
Đặc điểm chính của hàm ROUND trong SQL Server
- Hàm này được dùng để làm tròn một số cụ thể sang số thập phân được chỉ định.
- Hàm này chỉ chấp nhận tất cả các kiểu số, bao gồm số dương, âm và 0.
- Hàm này chấp nhận phân số.
- Hàm này luôn trả về số sau khi đã làm tròn tới số thập phân được chỉ định.
Cú pháp hàm làm tròn trong SQL Server
ROUND(number, decimals, operation)
Tham số:
Phương thức này chấp nhận 3 tham số, cụ thể như sau:
- Number: Số cần làm tròn.
- Decimals: Số chữ số thập phân được chỉ định để làm tròn số.
- Operation: Đây là tham số tùy chọn. Nếu giá trị bằng 0, nó làm tròn kết quả thành số thập phân. Nếu giá trị khác 0, nó sẽ cắt kết quả thành số thập phân. Giá trị mặc định là 0.
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 CEILING và FLOOR.
- 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
Sử dụng ROUND SQL với độ chính xác số âm
ROUND() cung cấp một chức năng khác khi tham số chính xác là một số âm. Ở ví dụ bên dưới, bạn có thể nhân số gần nhất với 100 bằng ROUND(value, -2). Chúng ta sẽ dùng một truy vấn tương tự với ví dụ trước đó để hiện chức năng này:
SELECT 12345 as Value, ROUND(12345,-2) AS "Round(value,-2)"
UNION
SELECT 12355 as Value, ROUND(12355,-2) AS "Round(value,-2)"
UNION
SELECT 12350 as Value, ROUND(12350,-2) AS "Round(value,-2)"
UNION
SELECT 101 as Value, ROUND(101,-2) AS "Round(value,-2)"
UNION
SELECT 199 as Value, ROUND(199,-2) AS "Round(value,-2)"
UNION
SELECT 99 as Value, ROUND(99,-2) AS "Round(value,-2)"
Truy vấn hiện tại được thực thi trong MS SQL Server. Ở đây, chúng ta cũng sử dụng dữ liệu không đổi để trình bày cách hàm ROUND() hoạt động. Bạn có thể thấy một tham số chính xác của -2 hoạt động trên những giá trị khác nhau. Kết quả của ROUND(value, -2) là bội số gần nhất của 100 so với giá trị này.
Tóm lại, điểm quan trọng cần nhớ về ROUND trong SQL Server:
- Hàm ROUND() trong SQL Server được sử dụng để làm tròn một số đã chỉ định thành một số chữ số thập phân theo yêu cầu.
- Hàm này chấp nhận nhiều loại số khác nhau, bao gồm số dương, số âm và số không.
- Kiểu trả về của hàm ROUND() phụ thuộc vào kiểu số đầu vào.
- Hàm ROUND() sử dụng thuật toán làm tròn đến chữ số gần nhất.
Nhìn chung, nếu muốn làm tròn số, nhất định bạn cần tới hàm ROUND trong SQL Server.
Bạn nên đọc
Theo Nghị định 147/2024/ND-CP, bạn cần xác thực tài khoản trước khi sử dụng tính năng này. Chúng tôi sẽ gửi mã xác thực qua SMS hoặc Zalo tới số điện thoại mà bạn nhập dưới đây:


Cũ vẫn chất
-
Build đội hình Song Đấu DTCL mùa 11, Song Đấu mùa 11
Hôm qua 1 -
Cách tải LOL PBE, tạo tài khoản PBE DTCL mùa 14 Thành Phố Công Nghệ
Hôm qua 17 -
57+ câu đố về địa danh Việt Nam
Hôm qua 5 -
Ảnh Free Fire giàu, ảnh nick Free Fire giàu, ảnh acc Free Fire giàu
Hôm qua -
10 phần mềm benchmark miễn phí tốt nhất dành cho Windows
Hôm qua -
Cách tắt Windows Update trên Windows 10, tắt update win 10 vĩnh viễn
Hôm qua 18 -
Email "Facebook Protect" từ "Security@facebookmail.com" có hợp pháp không?
Hôm qua -
Icon chim cánh cụt có nghĩa là gì?
Hôm qua -
Hình ảnh chào buổi sáng, hình ảnh chào ngày mới đẹp
Hôm qua -
6 cách xóa file vĩnh viễn trên Windows
Hôm qua 3