2016-03-14 2 views
0

Должно быть, я полный идиот или что-то в этом роде. Я использую Microsoft SQL Server 2008. Я не могу сделать простой раздел. SELECT 200/600 возвращает большое жирное гусиное яйцо (0,00). Тем не менее, если я делаю 600/200, это возвращает 3. Единственное, что я могу придумать, это настройка сервера. Здесь я чувствую себя довольно глупо. Может ли кто-нибудь помочь?Проблема с простым разделением в SQL Server

Shown on my server

ответ

4

Числа вы используете интерпретируются как целые числа, следовательно, значения, которые вы не могли бы нормально ожидать.

Попробуйте это ...

select 200.0/600.0 

, и вы увидите, что SQL Server обрабатывает числа как поплавки и, следовательно, дает результат, который вы хотите.

В качестве альтернативы вы можете попробовать

select cast (200 as float)/cast (600 as float) 

И вы получите тот же результат - все, что я сделал здесь явно приводить значения, как поплавки.

+0

Это было! Большое спасибо! – Gregbert

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

  • Нет связанных вопросов^_^