Avatar billede MortenJA Nybegynder
24. maj 2010 - 15:41 Der er 6 kommentarer og
1 løsning

Hjælp til joinforbindelse 2

I forlængelsen af denne tråd:
http://www.eksperten.dk/spm/910103

Har jeg endnu et problem med en joinforbindelse. Hvad skal jeg gøre for at få en tabel yderligere med? Jeg har forsøgt mig med følgende kode, men det virker ikke efter hensigten.

SELECT Year(produktion.dato) AS År, fnavn,  Sum(AntalFejl)*100 / sum(Pantal) AS FejlAndel
FROM (Produktion LEFT JOIN (select ProdRegID, sum(AntalF) as AntalFejl, FtNr AS fejlnummer
from Fejl
group by ProdRegID, FtNr
) grupperedefejl ON grupperedefejl.ProdRegID = produktion.ProdRegID) LEFT JOIN FejlTyper ON grupperedefejl.fejlnummer = fejltyper.ftnr
GROUP BY YEAR(produktion.dato), fnavn
ORDER BY YEAR(produktion.dato) DESC

Ovenstående kode laver nogle tomme celler samt kommer igen med et for højt antal ved "PAntal".
Avatar billede wagner Nybegynder
24. maj 2010 - 20:46 #1
Hej Morten

Har du en oversigt over tabellerne?

Wagner
Avatar billede MortenJA Nybegynder
25. maj 2010 - 09:03 #2
Du har nok ret i, at det vil være en god ide til forståelsen :) Tabellerne (og tilhørende relationer) kan ses her:

http://www.billedeupload.dk/photo/2010-05/0ef70377/relationer.JPG.html
Avatar billede wagner Nybegynder
25. maj 2010 - 11:30 #3
Det lyder lidt selvmodsigende, det du ønsker at finde.

Du vil gerne have fordelt fejlene pr, og så vil du også have dem fordelt på feltnummeret.

Du kan overveje fordele på år OG feltnummer, men det vil nok give dig nogle problemer i henhold til din procentudregning.

Hvad er formålet med din forespørgsel?

Wagner
Avatar billede MortenJA Nybegynder
25. maj 2010 - 11:58 #4
Formålet med forespørgslen er at fordele fejlprocenten på fejltypen indenfor de forskellige år. Outputtet ser af min forespørgslen ser således ud:

http://www.billedeupload.dk/photo/2010-05/670bd874/output.JPG.html

Alternativt kan man opstille det i en PIVOT tabel, men jeg vil gerne bare lige have styr på join forbindelsen først.
Avatar billede wagner Nybegynder
25. maj 2010 - 14:11 #5
Det ser da ellers rigtigt ud. er problemet, at du vil have årene uden felt væk?

I så fald vil jeg tro du har ehn række i din tabel med felter med et blankt feltnavn, som du bare kan filtrere væk.
Avatar billede MortenJA Nybegynder
03. juni 2010 - 20:35 #6
Jeg har fundet ud af det.
Avatar billede wagner Nybegynder
07. juni 2010 - 10:24 #7
Det ville være godt, hvis du skrev din løsning herinde, så andre i fremtiden kan lære af dit spørgsmål.

Wagner
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