forhandler_produkt_typer: fortæller hvilke produkt-typer en forhandler forhandler. nyhedsbrev_produkt_typer fortæller hvilke produkt-typer et nyhedsbrev er relevante for.
Nu vil jeg gerne lave én query, hvor jeg finder de forhandlere, som skal modtage et givent nyhedsbrev. Kun de forhandlere som har sammenfaldende produkttyperid med det givne nyhedsbrev skal med.
For at finde alle der skal have dit nyhedsbrev no 1, brug denne kommando
SELECT f.navn, n.indhold FROM forhandler AS f, nyhedsbreve AS n, forhandler_produkt_typer AS fpt, nyhedsbrev_produkt_typer AS npt WHERE npt.nyhedsbrevid = '1' && npt.produkttypeid=fpt.produkttypeid && fpt.forhandlerid=f.id && npt.nyhedsbrevid=n.id
og hvis du kun vil have en pr. kunde, skal du have en GROUP BY f.id
Ok, jeg har udbygget den med et ekstra tjek - og det spiller perfekt:
SELECT f.navn, n.overskrift FROM forhandler AS f, nyhedsbreve AS n, forhandler_produkt_typer AS fpt, nyhedsbrev_produkt_typer AS npt, nyhedsbrev_certificering AS nbc WHERE npt.nyhedsbrevid = '11' && npt.produkttypeid = fpt.produkttypeid && fpt.forhandlerid = f.id && npt.nyhedsbrevid = n.id && f.certificering = nbc.certificeringid && nbc.nyhedsbrevid = '11'
Takker, post et svar, så du kan få pointene.
Tillægsspørgsmål:
I tabellen forhandler har jeg hhv. forhandlerne og eventuelle brugere hos forhandlerne. Dvs. forhandler kan oprette brugere, som står i samme tabel. Forskellen er at forhandler.forhandlerid hos brugerne er = den overordnet forhandlers id og hos de overordnede forhandlere er den = NULL.
Jeg vil gerne have brugerne med i min query, men udfordring består I at betingelserne i ovenstående query skal køres på den overordnet forhandlers post i tabellen, dvs. forhandler_produkt_typer+nyhedsbrev_produkt_typer+nyhedsbrev_certificering skal tjekkes på overordnet forhandlers id.
Kan den knækkes, så byder jeg på en omgang point yderligere.
Nej, det var ikke det jeg tænkte på. forhandler-tabellen indeholder f.eks. disse poster.
id navn forhandlerid 1 Forhandler NULL 2 Bruger 1 3 Forhandler NULL 4 Bruger 3 5 Forhandler NULL
Dvs. id 2 er bruger hos forhandleren id 1, ligesom id 4 er bruger hos forhandler id 3. Forhandler id 5 har ingen brugere tilknyttet.
I min query, vil jeg gerne have alle forhandlere, som opfylder betingelser, samt alle tilknyttede brugere, hos de forhandlere som opfylder betingelserne.
Giver det mening?
Hilsen Martin
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.