sql >> Database >  >> RDS >> Oracle

Query die terugkeert:ORA-01427 Subquery met één rij die meer dan één rij retourneert

Kun je het hieronder proberen,

Ik heb coalesce gebruikt in het geval er geen overeenkomst is voor kolom queue het zal het beschouwen als null en waarde 2 wordt in plaats daarvan genomen.

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. Eenvoudige Slony-I-replicatie-installatie.

  2. MYSQL EXACT woord selecteren met MATCH-query?

  3. Kunnen Django-modellen MySQL-functies gebruiken?

  4. T-SQL-query om tabeldefinitie te tonen?