Должно быть, я полный идиот или что-то в этом роде. Я использую Microsoft SQL Server 2008. Я не могу сделать простой раздел. SELECT 200/600 возвращает большое жирное гусиное яйцо (0,00). Тем не менее, если я делаю 600/200, это возвращает 3. Единственное, что я могу придумать, это настройка сервера. Здесь я чувствую себя довольно глупо. Может ли кто-нибудь помочь?Проблема с простым разделением в SQL Server
0
A
ответ
4
Числа вы используете интерпретируются как целые числа, следовательно, значения, которые вы не могли бы нормально ожидать.
Попробуйте это ...
select 200.0/600.0
, и вы увидите, что SQL Server обрабатывает числа как поплавки и, следовательно, дает результат, который вы хотите.
В качестве альтернативы вы можете попробовать
select cast (200 as float)/cast (600 as float)
И вы получите тот же результат - все, что я сделал здесь явно приводить значения, как поплавки.
Это было! Большое спасибо! – Gregbert