sql >> Database teknologi >  >> RDS >> Oracle

OPDATERING med CASE og IN - Oracle

Du sagde, at budgetposten er alfanumerisk. Det betyder, at den leder efter sammenligninger med strenge. Du bør prøve at omslutte dine parametre i enkelte anførselstegn (og du mangler den sidste THEN i Case-udtrykket).

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. Hvordan indsætter man en opdaterbar post med JSON-kolonne i PostgreSQL ved hjælp af JOOQ?

  2. Grundlæggende administration af Oracle 12c Multitenant

  3. Hvordan beregnes forskellen i timer (decimal) mellem to datoer i SQL Server?

  4. Top 5 PostgreSQL-forespørgselsovervågningsværktøjer