12. august 2012 - 10:43Der er
9 kommentarer og 1 løsning
En til mange relation - begræns mange relationen
Jeg har en - "en til mange relation" hvor jeg kun ønsker at se den første record på "mange" siden for hver key på en siden. Jeg har bygget en Querie ovenpå to tabeller der giver følgende resultat. Key-A -> Key-A 10.08.2012 Key-A -> Key-A 05.07.2012 Key-A -> Key-A 08.06.2012 Key-A -> Key-A 01.02.2011 Key-B -> Key-B 10.06.2012 Key-B -> Key-B 05.04.2012 Key-B -> Key-B 08.09.2012
Men jeg ønsker kun dette resultat. Key-A -> Key-A 10.08.2012 Key-B -> Key-B 10.06.2012
Kan man i den pågældende Querie filtrere sig frem til dette resultat og i givet fald hvordan ? Hvis ikke man kan det er der da en anden måde at gøre det på ? Vh. OMN
Hej Lars. Jeg kan ikke helt gennemskue det. jeg har følgende SQL:
SELECT DISTINCT Customer.ID, Order.ID, Order.LogDato FROM Customer INNER JOIN [Order] ON Customer.ID = Order.ID ORDER BY Customer.ID, Order.LogDato DESC;
Men den trækker fortsat alle Order.ID der hører til Customer.ID. Jeg ønsker kun den Order.ID pr. Customer.ID. I praksis skal jeg kun vise den nyeste/seneste order som en kunde har bestilt Vh. Ove
Synes godt om
Slettet bruger
12. august 2012 - 12:09#3
Udskift order.logdato med: last(order.logdato) as SidsteLogDato
SELECT DISTINCT Customer.ID, Order.ID, last(order.logdato) as SidsteLogDato FROM Customer INNER JOIN [Order] ON Customer.ID = Order.ID ORDER BY Customer.ID DESC;
Ovenstående giver denne meddelelse:
You tried to execute a query that does not include the specified expression "ID" as part of an aggregate function.
Vh . OMN
Synes godt om
Slettet bruger
12. august 2012 - 23:30#6
Jeg var lige væk et øjeblik!~)
Du mangler en group by..
Noget i retningen af:
SELECT DISTINCT Customer.ID, Order.ID, last(order.logdato) as SenesteLogDato FROM Customer INNER JOIN [Order] ON Customer.ID = Order.ID GROUP BY Customer.ID, Order.ID ORDER BY Customer.ID DESC;
Jeg vil gerne give point for dit svar. Hvis du vil have ulejlighed med at svare endnu engang så vil jeg prøve om jeg kan give to point i denne sag. Vh. OMN
Synes godt om
Slettet bruger
19. september 2012 - 09:23#8
SELECT DISTINCT Customer.ID, Max(Order.LogDato) AS MaxOfLogDato FROM Customer INNER JOIN [Order] ON Customer.ID = Order.ID GROUP BY Customer.ID ORDER BY Customer.ID;
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.