Avatar billede bollo Nybegynder
19. oktober 2000 - 14:31 Der er 15 kommentarer

TOP 10 problem

jeg vil lave en top 10 liste over de mest solgte vare, inden for den sidste 50 dage,

problemmet er at den finder den samme vare flere gange,

Den skal kun finde en vare en gang, og så skal de sorteres efter de mest solgt. (dem der optræder flest gange i databasen)

strSQL = \"SELECT * FROM vare WHERE  bestillingsdato>=\"&CLng(Date-50)&\";\"

jeg køre med access.

håber på lidt hjælp Daddo.
Avatar billede hornshoj Nybegynder
19. oktober 2000 - 14:33 #1
SELECT DISTINCT TOP 10 * FROM VARE WHERE bestillingsdato>=\"&CLng(Date-50)&\";\"

Avatar billede sone Nybegynder
19. oktober 2000 - 14:34 #2
Bruger du

  SELECT DISTINCT felt1, felt2 FROM...

så er sammensætningen af felt, felt2 unikke.
Avatar billede hornshoj Nybegynder
19. oktober 2000 - 14:35 #3
Husk kun at \"selecte\" de felter du skal bruge!
Avatar billede erikjacobsen Ekspert
19. oktober 2000 - 14:39 #4
Bollo=daddo ?? Nå nå, har vi en snyder mere eller hvad?

Jeg tror spørgeren mener, at der også skal grupperes og tælles i forespørgslen, men
lad os nu lige se hvorfor han har 2 navne ??
Avatar billede moses Praktikant
19. oktober 2000 - 14:50 #5
SELECT TOP 10 Count(Table.Varenr) AS CountOfVarenr, Table.Varenr, Table.bestillingsdato
FROM Table
WHERE (((Table.Bestillingsdato)>=\"&CLng(Date-50))
GROUP BY Table.Varenr
ORDER BY Count(Table.CountOfVarenr) DESC;
Avatar billede moses Praktikant
19. oktober 2000 - 14:51 #6
En fejl:

SQLTekst = \"SELECT TOP 10 Count(Table.Varenr) AS CountOfVarenr, Table.Varenr, Table.bestillingsdato
FROM Table
WHERE (((Table.Bestillingsdato) >= \" & CLng(Date-50) & \")
GROUP BY Table.Varenr
ORDER BY Count(Table.CountOfVarenr) DESC\"
Avatar billede moses Praktikant
19. oktober 2000 - 14:56 #7
Ved ikke, hvorfor du vil have den der Long-konvertering ved datoen. Det virker bedre med:

SQLTekst = \"SELECT TOP 10 Count(Table.Varenr) AS CountOfVarenr, Table.Varenr, Table.bestillingsdato
FROM Table
WHERE ((Table.Bestillingsdato) >= \" & DateAdd(\"y\",-50,Date) & \")
GROUP BY Table.Varenr
ORDER BY Count(Table.CountOfVarenr) DESC\" 
Avatar billede bollo Nybegynder
19. oktober 2000 - 18:33 #8
Tak for alle de svar..

Men jeg kan stadig ikke få det til at virke, jeg er havnet med:

strSQL = \"SELECT TOP 10 Count(varenr) AS CountOfVarenr, varenr, ordredato, titel, varegrp  FROM ordre WHERE varegrp LIKE \'Normal\' and ((ordredato)>=\"&DateAdd(\"y\",-50,Date)&\")
GROUP BY varenr ORDER BY Count(CountOfVarenr) DESC;\"

Kan det være fordi jeg køre med Access.

Daddo Bollo Hansen.
Avatar billede hornshoj Nybegynder
19. oktober 2000 - 18:37 #9
Har du testet din SQL i accessdatabasen. Det skulle være noget nemmere!
Avatar billede erikjacobsen Ekspert
19. oktober 2000 - 18:49 #10
Du har ikke svaret på om du har 2 brugernavne, så nu er du hermed meldt til admin.
Avatar billede carpediem Nybegynder
19. oktober 2000 - 21:21 #11
Bruger du ikke to tabeller? En til ordrelinier og en til varer? Det vil jeg da foreslå dig at gøre. Så ville du kunne gøre således:
strSql = \"SELECT TOP 10 Count(Varenr) AS CountOfVarenr, Varenr From Ordrelinier WHERE Bestillingsdato>=\"&Date()-50
rs.Open Bla bla bla
If Not rs.BOF Then
  rs.MoveFirst
End If
Do While NOT rs.EOF
  strSql = \"SELECT * FROM Varer WHERE Varenr = \"&rs(\"Varenr\")
  record.Open bla bla bla
  response.Write alt_hvad_du_har_om_varen_i_din_varetabel

Hvis du ikke forstår hvad jeg mener er du velkommen til at sende mig en mail, med databasen, så skal jeg kigge på det.

/CarpeDiem rasmus@lynggaard.nu
Avatar billede moses Praktikant
20. oktober 2000 - 09:05 #12
bollo>>
Den sætning, som du er \"havnet med\", som du skriver, har en fejl:

Der skal stå en af følgende:
LIKE \'*Normal*\'
LIKE \'Normal*\'
LIKE \'*Normal\'


Avatar billede andreas_admin Nybegynder
20. oktober 2000 - 10:56 #13
Bollo>> Jeg synes du skal \"rense\" dig selv, ved at komme med et svar på erikjacobsens henvendelse!
Avatar billede moses Praktikant
20. oktober 2000 - 11:17 #14
andreas_admin >>
Hvad er der egentligt med det der dobbelt navn halløj ?
Hvorfor finder man lige pludselig på at mistænke en bollo for at være en daddo ? (sære navne, men ellers ??)
Avatar billede bollo Nybegynder
29. oktober 2000 - 18:40 #15
Så lykkes det... jeg fik det til at virke.
tak for hjælpen.

Undskyld der er gået lidt tid.

til spørgsmålet om de to navne. daddo er mit ejet.
bollo bruger vi på mit arbejde.

daddo
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
Kurser inden for grundlæggende programmering

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