Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Jak zrobić kolumnę widoku NOT NULL

Możesz osiągnąć to, co chcesz, zmieniając nieco swoje zapytanie. Sztuczka polega na tym, że ISNULL musi być na zewnątrz, zanim SQL Server zrozumie, że wynikowa wartość nigdy nie może być NULL .

SELECT ISNULL(CAST(
    CASE Status
        WHEN 3 THEN 1  
        ELSE 0  
    END AS bit), 0) AS HasStatus  
FROM dbo.Product  

Jednym z powodów, dla których uważam to za przydatne, jest używanie ORM i nie chcesz, aby wynikowa wartość była mapowana na typ dopuszczający wartość null. Może to ułatwić wszystko, jeśli aplikacja widzi, że wartość nigdy nie jest pusta. Wtedy nie musisz pisać kodu do obsługi wyjątków zerowych itp.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Nazwy plików SQL Server a wersje

  2. Nie można zalogować się do SQL Server 2008 za pomocą narzędzia wiersza poleceń

  3. Jak obliczyć wiek (w latach) na podstawie daty urodzenia i getDate()

  4. Porównaj plany wykonania w SQL Server

  5. Jak połączyć wartości z tym samym identyfikatorem w sql