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

Pengembalian kueri:ORA-01427 Subkueri baris tunggal mengembalikan lebih dari satu baris

Bisakah Anda mencoba dengan di bawah ini,

Saya telah menggunakan coalesce jika tidak ada kecocokan untuk kolom queue itu akan menganggapnya sebagai nol dan nilai 2 diambil sebagai gantinya.

update product pd
set    pd.age = case
                   when pd.exittime != null then
                    (sysdate - pd.exittime)
                   else
                    coalesce((select (sysdate - pd.entrytime)
                                from department dp
                                where pd.queue = dp.queue
                                  and pd.id = dp.id)
                            ,2)
                end
where  pd.id > 1
and    pd.status in ('1','7','2','5')
and    exists (select 1
                 from department dp
                where pd.id = dp.id
                  and pd.currentstatus = dp.currentstatus
                  and pd.activity = dp.activity);


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana Cara Memeriksa Tablespace di Oracle SQL Developer?

  2. Bagaimana cara mendesain tabel yang akan menyimpan data yang sangat besar?

  3. Menerapkan Penguncian Optimis di Oracle

  4. subquery mengembalikan lebih dari satu baris

  5. Pilih dua kolom dari tabel yang sama dengan kondisi WHERE yang berbeda