sql >> Database >  >> RDS >> Oracle

Hoe het SQL-resultaat in een variabele op te slaan en het resultaat te ontleden om een ​​mogelijk patroon te identificeren?

Als ik het goed begrijp, kun je zoiets als dit doen:

select count(*)
from (select listagg(flag) within group (order by dt) as flags
      from temp
     ) x
where not regexp_like(flags, 'HH|EE|HS|SE');

Als alternatief kunt u lag() . gebruiken :

select (case when count(*) = sum(case when flag2 not in ('HH', 'EE', 'HS', 'SE')
             then 1 else 0
        end) as return_value
from (select t.*,
             (lag(flag) over (order by dt) || flag) as flag2
      from temp
     ) t;



  1. Hoe een serienummer in een query te genereren?

  2. Een optimale omgeving instellen voor PostgreSQL

  3. Laravel 5.1 verbruikt zeep wsdl-service met behulp van controller en model

  4. Sql Server 2008 sp_executesql syntaxis hulp - ik denk dat mijn aanhalingstekens niet correct zijn