Чому SELECT 1/2 повертає 0?


Відповіді:


29

Вони цілі числа.

Спробуйте:

select 1.0/2.0;

Або:

select CONVERT(NUMERIC,1)/CONVERT(NUMERIC,2);

14

По-перше, ви виконуєте числа як цілі числа, але по-друге, ви також не визначили точність і масштаб числового типу даних.

Спробуйте це:

SELECT CONVERT(NUMERIC(5, 2), 1.0/2.0)

або навіть

SELECT CONVERT(NUMERIC(5, 2), 1/2.0)
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.