Avatar billede maabjerg Nybegynder
30. maj 2008 - 10:16 Der er 5 kommentarer og
1 løsning

Hvordan får jeg lige sat den her query rigtig sammen?

Hej eksperter

Jeg har et lille problem med at få listet mit data korrekt.

Jeg har 2 tabeller - den ene hedder orderlines og den anden hedder customers

Jeg skal bruge en liste over alle de kunder, som en aktuel sælger har ordre på i en aktuel periode. Men hver gang lister den bare kunden de antal gange, som der er ordrer på kunden.

min query er:

SELECT
cst.company,
cst.id
FROM
customers AS cst
JOIN
(
orderlines AS ol
)
ON
(
ol.salesman='".$salesman."'
AND
ol.customerid = cst.id
AND
(
ol.".$field." BETWEEN '".$startdato."' AND '".$slutdato."'
)

Hvad kan jeg lige gøre?

På forhånd tak!

Med venlig hilsen
Steffen Maabjerg
Avatar billede 2c Nybegynder
30. maj 2008 - 10:24 #1
I din join skal du have en join mellem orderlines og customer.

Altså noget i stil med.
ON ol.customerID = cst.CustomerID, og ikke andet.

Og så bare en where på til sidst:
WHERE ol.salesman = '".$salesman."' and ol.".$field." BETWEEN '".$startdato."' AND '".$slutdato."'

Hvis jeg altså har forstået det rigtigt :-)
Avatar billede 2c Nybegynder
30. maj 2008 - 10:27 #2
Og lav enventuelt en distinct på :
SELECT
cst.company,
cst.id

Således:
SELECT Distinct
cst.company,
cst.id
Avatar billede maabjerg Nybegynder
30. maj 2008 - 10:31 #3
Har jeg prøvet nu - men den bliver stadigvæk ved med at liste alle kunder :S..

Her er min query nu:

SELECT
cst.company,
cst.id
FROM
customers AS cst
JOIN
(
orderlines AS ol
)
ON
(
ol.customerid = cst.id
)
WHERE ol.salesman = '".$salesman."'
AND
(
ol.".$field." BETWEEN '".$startdato."' AND '".$slutdato."'
)
Avatar billede 2c Nybegynder
30. maj 2008 - 10:34 #4
Ok. Hvad så når du bruger distinct?
Avatar billede maabjerg Nybegynder
30. maj 2008 - 10:35 #5
Det virker! :D..

Kanon.. den funktion kendte jeg ikke.. tusind tak! :D

Du må lige oprette et svar :)
Avatar billede 2c Nybegynder
30. maj 2008 - 10:53 #6
Ok :-)
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