Oracle
 sql >> Baza danych >  >> RDS >> Oracle

UPDATE z CASE i IN - Oracle

Powiedziałeś, że budżetpost jest alfanumeryczny. Oznacza to, że szuka porównań z ciągami. Powinieneś spróbować ująć swoje parametry w pojedynczych cudzysłowach (i brakuje końcowego THEN w wyrażeniu Case).

UPDATE tab1   
SET budgpost_gr1=   CASE  
                        WHEN (budgpost in ('1001','1012','50055'))  THEN 'BP_GR_A'   
                        WHEN (budgpost in ('5','10','98','0'))  THEN 'BP_GR_B'  
                        WHEN (budgpost in ('11','876','7976','67465')) THEN 'What?'
                        ELSE 'Missing' 
                        END 


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Zip przy użyciu procedury składowanej Oracle

  2. Generuj dane testowe za pomocą programisty Oracle PL/SQL

  3. Funkcja SINH() w Oracle

  4. Czy odwołania cykliczne są dopuszczalne w bazie danych?

  5. Architektura pakietu Oracle E-Business Suite w 12.2