Avatar billede flamsk Nybegynder
07. december 2008 - 17:26 Der er 3 kommentarer

count sum

Hej

Jeg har to tabeller

Tabel A, hvor der bliver indsat en post, hvergang et emner ændre sig.
indeholder (emneId)
4
4
4
5
5
6

Hvis jeg på Tabel A
select emneId, count(emneId) as EmneAntal from A group by emneId
Så får jeg
4, 3
5, 2
6, 1

Tabel B, indeholder (emneId, emneAntal)
4,50
4,100
4,71

Hvis jeg på Tabel B
select emneId, sum(emneAntal) from B group by emneId
så får jeg
4, 221
5, 25
----------------
hvordan fletter jeg resultatet sammen fra de to selects, så jeg får følgende. (emneId, emneAntal fra sql A + emneAntal fra slq b)
4, 224
5, 27
6, 1


Nogen der kan hjælpe ?
Avatar billede pgroen Nybegynder
08. december 2008 - 08:11 #1
Det virker lidt akavet, at du ikke har en emne-tabel, der indeholder en række for hver af dine emne-id'er, men OK.

Er det noget i stil med følgende, du tænker på?

SELECT sub1.a, sub1.antal_a, sub2.antal_b
  FROM (SELECT  emneID, count (*) antal_a
            FROM tabel_a
        GROUP BY emneID) sub1,
      (SELECT  emneID, sum(emneAntal)
            FROM tabel_b
        GROUP BY emneID) sub2
WHERE sub1.emneID = sub2.EmneID;
Avatar billede teepee Nybegynder
08. december 2008 - 08:23 #2
select emneid, count(emneid) from (
select emneid from tabelA union all select emneid from tabelB)
group by emneid
Avatar billede pgroen Nybegynder
23. november 2009 - 08:50 #3
flamsk ?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester