Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

UPDATE dengan CASE dan IN - Oracle

Anda mengatakan bahwa pos anggaran adalah alfanumerik. Itu berarti mencari perbandingan terhadap string. Anda harus mencoba menyertakan parameter Anda dalam tanda kutip tunggal (dan Anda kehilangan THEN terakhir dalam ekspresi Kasus).

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. Cara Mengubah Bahasa untuk Sesi Oracle Anda

  2. Apakah ada Cara untuk menggunakan Linq ke Oracle

  3. Mengulangi baris berdasarkan nilai kolom di setiap baris

  4. Perubahan Tabel Pemantauan di Oracle

  5. Cara Memotong TABEL di Oracle