Hirdetés

Új hozzászólás Aktív témák

  • sztanozs
    veterán

    Sziasztok!

    Szeretnék további union-nal bővíteni egy lekérdezést, amiben viszont group by is lenne.
    Hogyan tudom kihagyni azokat a mezöket amelyek nem group by -osak?
    pl. select 'adat' ad, ID, nev, ertek1, ...
    union
    select null, id, null, sum(Ertek)
    from..
    group by id,Ertek

    de így nem jó.

    Hali, ennek tutira mennie kellene:
    select 'adat' ad, ID, nev, ertek
    from tabla..
    union
    select "osszesen" ad, ID, null nev, sum(ertek)
    from tabla..
    group by id

    ha pedig van 5 érték, amiből csak az elsőt summázod, a többi meg üres lesz a végén:
    select 'adat' ad, ID, nev, ertek1, ertek2, ertek3, ertek4, ertek5
    from tabla
    union
    select "osszesen" ad, ID, null nev, sum(ertek) ertek1, null ertek2, null ertek3, null ertek4, null ertek5
    from tabla
    group by id

    Sőt a végén még össze is rendezheted, hogy minden ID-hez a a felsprplás végére tegye az összeget, ne a tábla végére ID-nként:
    select * from (
    select 'adat' ad, ID, nev, ertek1, ertek2, ertek3, ertek4, ertek5
    from tabla
    union
    select "osszesen" ad, ID, null nev, sum(ertek) ertek1, null ertek2, null ertek3, null ertek4,
    null ertek5
    from tabla
    group by id)
    order by ID, ad

Új hozzászólás Aktív témák