2016-08-28 3 views
0

Я хочу преобразовать значение float в его следующее целочисленное значение, например 8.1234 to 9, 7.5678 to 8. Я использую ceiling, но он не работает, он возвращает значение float, например 7.5, 8.5 на выходе.Преобразование значения float в следующее значение int в SQL Server

В чем проблема? Я не понимаю. Кто-нибудь, пожалуйста, помогите мне.

select 
    *, 
    (select avg(R) 
    from (values (ceiling(Best1)), (ceiling(Best2))) T (R)) as Average 
from 
    result 

ответ

1

Вы должны выполнить функцию ceiling на усредненных значений, не раньше, чем в среднем их.

select *, 
    (select ceiling(avg(R)) 
    from (values Best1, Best2) T (R)) as Average 
From result 

(Хотя я не могу проверить это, потому что вы не предоставили какие-либо тестовые данные, и этот запрос также чувствует себя синтаксический от - но я не очень глубоко в MS SQL)

+0

Он работает. Огромное спасибо. :) –

Смежные вопросы