sql >> Database teknologi >  >> RDS >> Oracle

Oracle - flere forespørgsler i ét resultat

Du kan få resultaterne i én forespørgsel ved at bruge UNION-operatoren. Det egner sig ikke til at være omkostningseffektivt på store sæt, men gør jobbet.

  • alle forespørgsler skal vælge det samme antal kolonner af samme datatype.
  • du kan vælge null, hvis du har en unik kolonne i en forespørgsel
  • det er også praktisk at vælge en streng, der angiver oprindelsen af ​​dataene
  • resultatsættet vil kun bruge navnene på kolonnerne i den første forespørgsel
  • bestilling gælder for hele resultatsættet, ikke individuelle forespørgsler

    vælg count(*) AS R_COUNT, 'OSABA' AS SOURCE,subjekt.nazev , null, null,null,null

    fra osoba,subjekt

    hvor osoba.ID_PATRI_DO=subjekt.ID

    gruppe af subjekt.nazev

    UNION

    vælg antal(*),'ZADAVACI_POSTUP', subjekt.nazev , null, null,null,null

    fra ZADAVACI_POSTUP,subjekt

    hvor ZADAVACI_POSTUP.id_zadavatel=subjekt.ID

    gruppe af subjekt.nazev

    UNION

    vælg NULL,'Aplikacni_log', sb.nazev, lg.create_uzivatel, lg.create_cas,null,null

    fra Aplikacni_log lg join zadavaci_postup zp på zp.id =lg.id_zp

    join subjekt sb på sb.id =zp.id_zadavatel

    hvor lg.create_cas> to_date('08.11.2014', 'DD.MM.ÅÅÅÅ')

    UNION

    vælg antal(*) pocet,'SUBQUERY', do_dne_včetně,nazev_organizace,max(trunc(sysdate)-6) ode_dne_včetně,max(trunc(sysdate))

    fra(

    vælg to_char(t.popis) popis_typu,subj.nazev nazev_organizace,

    u.brugernavn,u.nazev, a.datumzapisauditu

    ,to_char(a.datumzapisauditu,'DD.MM.YYYY') datum , a.id

    fra d$caudit a

    tilmeld dig cuzivatel u på u.id=a.id_uzivatel

    join osoba os på u.id_osoba_bridge =os.id

    join t$subjekt subj på subj.id =os.id_patri_do

    venstre join d$caudittyp t på t.id=a.id_audittyp

    hvor datumzapisauditu mellem trunc(sysdate)-7 OG trunc(sysdate)

    rækkefølge efter a.datumzapisauditu desc)

    ;




  1. Fejl ved forbindelse til heroku postgres db i nodejs

  2. SQL Vælg sætning med WHERE, AND, OR

  3. Kan ikke oprette forbindelse til lokal MySQL-server i docker-compose

  4. Kan jeg få SQL Server til at kalde en lagret proc hvert n. sekund?