преобразование нуля в 0 - PullRequest
       1

преобразование нуля в 0

0 голосов
/ 13 декабря 2010

Я пытался это сделать,

(случай, когда (PREPAYMENT_AMT! = Null), затем 0 else (PREPAYMENT_AMT) END)

почему он все еще имеет значение null ???

Ответы [ 2 ]

0 голосов
/ 13 декабря 2010

Я знаю, что в SQL null не равен ничему, потому что это неизвестное значение. Как одно неизвестное может сравниться с другим? Это не имеет никакого смысла. Есть специальные операторы для работы с нулем.

(case when (PREPAYMENT_AMT IS NULL) then 0 else (PREPAYMENT_AMT) END) 

В большинстве языков SQL также есть функции, которые делают то, что вы хотите. В MS SQL Server ISNULL(PREPAYMENT_AMT, 0) будет делать то, что вы хотите. В MySQL это COALESCE(PREPAYMENT_AMT, 0).

Вы должны знать, что я не знаю, что такое ireport, так что проверьте ваши документы, чтобы узнать, как обрабатывать нули.

0 голосов
/ 13 декабря 2010

Потому что вы меняете его на 0, если оно НЕ равно нулю. Вам нужен AMT == null

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...