Dynamisk Query Builder
Hej,Jeg er i gang med at lave et program, hvor man kan bygge og gemme forespørgsler mod en database. Programmet skal indgå i et større program, og skal heri fungere som et værktøj til at lave avancerede statistikker.
Alting i programmet virker fint, men nu er jeg kommet til et problem:
Nestede betingelser (parenteser i WHERE).
Jeg er i stand til at lave nedenstående:
FROM Person
INNER JOIN PersonAdresse ON Person.ID = PersonAdresse.PersonID
INNER JOIN Adresse ON Adresse.ID = PersonAdresse.AdresseID
WHERE (Person.JobTitel = 'Udvikler' AND Person.Alder > 30) OR
(Person.JobTitel = 'Designer' AND Person.Alder < 30)
Nu vil jeg så gerne udvide ovenstående til dette:
FROM Person
INNER JOIN PersonAdresse ON Person.ID = PersonAdresse.PersonID
INNER JOIN Adresse ON Adresse.ID = PersonAdresse.AdresseID
WHERE (Person.JobTitel = 'Udvikler' AND (Person.Alder > 30 OR Person.Koen = 'Mand')) OR
(Person.JobTitel = 'Designer' AND (Person.Alder < 30 OR Person.Koen = 'Kvinde'))
Koden kan ses her:
http://pastebin.com/nynXmxHD
Nogen der har en god måde at håndtere det på?
Forbedringer og forslag er også meget velkomne.