sql >> Databasteknik >  >> RDS >> Oracle

Uppdatera flera rader med CASE WHEN - ORACLE

Ok baserat på fiolen du har gett har jag provat dessa och det fungerade för mig

create table account(  account_id number primary key,
                           account_status varchar2(30));

insert into account values(1, '5');
insert into account values(2, '3');
insert into account values(3, '2');

select * from account


update account
set account_status= case
when account_id=1 then '2'
when account_id=2 then '5'
when account_id=3 then '3'
END

select * from account

Jag använde inte where-villkoret



  1. Mysql count prestanda på mycket stora bord

  2. PostgreSQL-syntaxfel vid eller nära "union"

  3. Hql, Hur skriver man join-fråga mellan tabeller som har en till många-relation?

  4. Oracle SQL - få antal dagar mellan två datum för en angiven månad