используя IF в представлении SQL Server - PullRequest
1 голос
/ 19 августа 2010

У меня есть представление в SQL-сервере, которое переводит из одной версии схемы в другую.
В настоящее время вид выглядит так:

SELECT newValue AS oldValue  
FROM dbo.MyTable

Проблема в том, что в новой схеме newValue не имеет значения nullable, поэтому мы устанавливаем его в -1 для обозначения пустых полей, но в старой схеме он был nullable.

Как мне сделать что-то такое:

SELECT  
(  
  IF( newValue > -1 )  
    newValue as oldValue  
  ELSE  
    NULL as oldValue
)  
FROM dbo.MyTable

1 Ответ

7 голосов
/ 19 августа 2010
SELECT  
  case when newValue > -1 then  
    newValue  
  else  
    NULL
  end as oldValue
FROM dbo.MyTable
...