sql >> Databasteknik >  >> RDS >> Oracle

Oracle OM FINNS DÅ, ANNAT

Beräkna först villkoret och tillämpa det sedan på den sista SELECT med CASE . Något så här:

with temp (validexists) as
  (select count(column1)
   from table1
   where column1 in ('Yes') 
      and column2 not like '%Yes%'
  )
  select *
    into l_row
    from table1
    where column1 in ('Yes')
      and column2 in (select column2
                      from table1 cross join temp
                      where column1 in ('Yes')
                        and column2 not like case when validexists = 0 then '%Yes%'
                                                  else                      '%No%'
                                             end
                     );



  1. Välj rader med maxvärde grupperade i två kolumner

  2. migration från sqlite till postgresql i django

  3. mysql:dela varchar-värde och infoga delar

  4. Hexsträng till heltalskonvertering i Amazon Redshift