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

SQL:klauzula IF w klauzuli WHERE

Użyj wyrażenia CASE
UPDATE: Poprzednia składnia (jak wskazało kilka osób) nie działa. Możesz użyć CASE w następujący sposób:

WHERE OrderNumber LIKE
  CASE WHEN IsNumeric(@OrderNumber) = 1 THEN 
    @OrderNumber 
  ELSE
    '%' + @OrderNumber
  END

Możesz też użyć wyrażenia IF, takiego jak @N. J. Reed wskazuje.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. 7 sposobów na znalezienie zduplikowanych wierszy w SQL Server, ignorując dowolny klucz podstawowy

  2. Jak szybko napisać Select Query w SQL Server — SQL Server / TSQL Tutorial, część 108

  3. Obliczanie odległości między dwoma punktami (szerokość geograficzna, długość geograficzna)

  4. Wykonaj polecenie Wstaw i zwróć wstawiony identyfikator w Sql

  5. SIGN() Przykłady w SQL Server