06. juli 2006 - 11:22Der er
7 kommentarer og 1 løsning
Problem med select med subselects
Jeg prøver at få denne select til at returnere alle medarbejdere som har registreret tid på en specifik opgave i en specifik måned, men den returnere kun resultatet fra een medarbejder.
select a_hours, assignmentid, employeedayid from timespent where employeedayid in ( select id from employeeday where workdayid in ( select id from workday where workmonthid=2976 ) ) and assignmentid=278
Kan du ikke bruge noget i denne stil : select * from timespent tp JOIN employeeday ed ON ed.id = tp.employeedayid JOIN workday wd ON wd.id = ed.workdayid WHERE assignmentid=278
select id from employeeday where workdayid in (select id from workday where workmonthid=2976)
Virker fint.
select a_hours, assignmentid, employeedayid from timespent where employeedayid in (select id from employeeday where workdayid in (select id from workday where workmonthid=2976)) and assignmentid=278
Virker ikke - der mangler den ene anden medarbejder der også har registreret opgaven.
select a_hours, assignmentid, employeedayid from timespent where employeedayid in (select id from employeeday where workdayid in ( select id from workday where workmonthid=2976)) and assignmentid in (select id from assignment where taskid in ( select taskid from assignment where id=278))
En extra subselect med en subselect til at finde dem med. :)
Tak for at hjælpe mig til finde problemet!!
ffsoft -> Smid et svar, hvis du vil have nogle points! :)
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.