2012-03-26 33 views
14

Tôi đang tìm để làm tròn giá trị nhưVòng tới 0,5 hoặc 1,0 trong SQL

2,3913 -> 2,5

4,6667 -> 4,5

2.11 -> 2

Tôi có thể quản lý điều này bằng SQL như thế nào?

Cảm ơn

+1

giải pháp đầu tiên isnt giải quyết với sau 2 người. –

+0

Tôi không hiểu cách làm tròn này. Nửa gần nhất? Tại sao 2,11 được làm tròn xuống 2, nhưng 4.6667 được làm tròn lên đến 5 thay vì giảm xuống còn 4.5? – vcsjones

+0

Nếu nó "tròn đến 0,5" gần nhất, thì ví dụ thứ hai sẽ tròn thành '4,5', không phải là' 5'. Nếu đó là "round up to a 0.5", thì ví dụ thứ 3 sẽ là '2.5'. Hãy viết một quy tắc mà chúng tôi thực sự có thể làm theo. –

Trả lời

41
SELECT ROUND(2.2 * 2, 0)/2 

giúp bạn đến gần 0,5

+1

+1: Thực ra những gì OP yêu cầu cho :) – MatBailie

+0

Cảm ơn công việc đó rất tuyệt! Cảm ơn rất nhiều! –

+2

Điều này có thể được viết thành 'SELECT ROUND (2.2/.5,0) * .5'. – wilsjd

Các vấn đề liên quan