Avatar billede carindex Nybegynder
21. december 1999 - 20:22 Der er 1 kommentar og
1 løsning

Sql statement!

Hej, jeg har lavet en shop og vil gerne optælle hvilke og hvor mange varer der er bestilt. Umiddelbart kan det laves på denen måde:

SELECT VareID,  Sum([Antal]) AS Tbestv, Sum([Total]) AS Tbeloeb
FROM Ordredetaljer
GROUP BY VareID;

Men jeg ville gerne kunne kombinere VareID nummeret med f.eks. varenavnet samt den øvrige information der er gemt på den pågeldende vare altså faktisk som at bruge WHERE VareID=blabla

How to do?
Avatar billede baunsgaard Nybegynder
21. december 1999 - 23:27 #1
Hvis du har en Vare tabel kan du benytte følgende kode

SELECT o.VareID,  Min(t.VareNavn), Sum(o.Antal) AS Tbestv, Sum(o.Total) AS Tbeloeb
FROM Ordredetaljer o, VareTabel t
WHERE o.VareID=t.VareID
GROUP BY VareID;

Dvs. felterne fra den tilknyttede tabel tages blot som Min(feltnavn). Det virker da Min er en aggrerende funktion. Den resulterer blot den mindste værdi (af en række værdier der er ens :-)

Mvh
Avatar billede carindex Nybegynder
28. december 1999 - 21:14 #2
Ja det virker men er det den rigtige måde at gøre det på?

Lige et andet ?
Hvis man vil bruge ORDER BY på et felt man selv har lavet altså f.eks. SUM (felt) AS TEST .........ORDER BY TEST kan det ikke lade sig gøre ?
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