sql >> Database >  >> RDS >> Oracle

Optimale Oracle SQL-query om group-by te voltooien op meerdere kolommen in een enkele tabel met ~ 7.000.000 records

Hoewel u dit als een groep per query formuleert, is er een andere benadering die row_number() gebruikt. Dit somt elke rij in de groep op, gebaseerd op de "order by"-clausule. In de volgende query somt het elke groep op op basis van external_reference en top_line_id, geordend op support_id:

select *
from (Select t.*,
             row_number() over (partition by external_reference, top_line_id
                                order by support_id) as seqnum
      from STAGE.SFS_GH_R3_IB_ENTLMNT_CONTACTS t
     )
where seqnum = 1


  1. Een string doorgeven als een WHERE-component in MYSQL

  2. een datumveld opmaken in mysql

  3. Spatial Point-functies met behulp van Laravel Eloquent ORM

  4. Json opslaan in MySQL-database vanuit Node.js