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

Używanie IF..ELSE w UPDATE (SQL server 2005 i/lub ACCESS 2007)

to powinno działać

update table_name
  set column_b = case
                  when column_a = 1 then 'Y'
                  else null
                 end,
  set column_c = case
                  when column_a = 2 then 'Y'
                  else null
                 end,
  set column_d = case
                  when column_a = 3 then 'Y'
                  else null
                 end
where
 conditions

pytanie brzmi, dlaczego chcesz to zrobić… możesz chcieć przemyśleć model danych. możesz zastąpić null z czymkolwiek chcesz.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Procedura składowana zgłasza błąd w SQL Server 2012, ale działa dobrze w SQL Server 2000

  2. sql grupuj tylko według wierszy, które są w sekwencji

  3. Jak mogę przejść do przechowywanej procedury SQL Server z mojego kodu C#?

  4. Kompozytowy klucz podstawowy JPA

  5. lista rozdzielana przecinkami jako pojedynczy ciąg, T-SQL