02. juli 2013 - 12:28Der er
3 kommentarer og 1 løsning
Retuner kun den nyeste ordre
Jeg sidder med følgende sql query, som giver mig alle alle ordre der indeholder m, der matcher kampagnerne.
select callee.phoneno, orders.orderno, orders.createdate, callee.email, , addresses.campaignid, addresses.status from orders join callee on callee.id=orders.calleeid join addresses on callee.id=addresses.applid where orders.orderno like '%m%' and addresses.campaignid in (222,221)
Problemet er at jeg kun ønsker den nyeste ordre der indeholder "m" og som der mathcer kritererne. Jeg har prøvet med left join, men uden held. Nognen gode bud?
Bavarian Nordics vækst blev starten på et DevOps-samarbejde med Novataris for hurtigt at kunne tilpasse IT-organisation til forretningen.
7. december 2023
Slettet bruger
02. juli 2013 - 12:57#1
Det er der flere løsninger på - her er én:
select * from ( select callee.phoneno, orders.orderno, orders.createdate, callee.email, , addresses.campaignid, addresses.status ,row_number() over(order by orders.createdate) Nr from orders join callee on callee.id=orders.calleeid join addresses on callee.id=addresses.applid where orders.orderno like '%m%' and addresses.campaignid in (222,221) ) s1 where Nr = 1
TAK - Det virker perfekt... Det sætter jeg stor pris på...
Velfortjente point :-)
Synes godt om
Ny brugerNybegynder
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.