SELECT u.firstName, u.lastName, tl.todolistID, tl.projectID, tl.title, tl.description, tl.added, tl.timetrack, (select count(*) from #variables.tableprefix#todos t where tl.todolistID = t.todolistID and completed is not NULL) as completed_count, (select count(*) from #variables.tableprefix#todos t where tl.todolistID = t.todolistID and completed is NULL) as uncompleted_count, ms.milestoneid, ms.name, p.projectID, p.name as projName FROM #variables.tableprefix#todolists tl LEFT JOIN #variables.tableprefix#users u ON u.userID = tl.userID LEFT JOIN #variables.tableprefix#milestones ms ON tl.milestoneid = ms.milestoneid LEFT JOIN #variables.tableprefix#projects p ON tl.projectID = p.projectID WHERE 0=0 AND tl.projectID = AND tl.projectID IN () AND tl.todolistID = AND ms.milestoneID = ORDER BY p.name, tl.projectID, tl.title, tl.rank, tl.added INSERT INTO #variables.tableprefix#todolists (todolistID,projectID,title,description,milestoneid,timetrack,userid,added,rank) VALUES (, , , , , , , #Now()#,1) UPDATE #variables.tableprefix#todolists SET title = , description = , milestoneid = , timetrack = WHERE projectid = AND todolistid = UPDATE #variables.tableprefix#todolists SET rank = WHERE projectid = AND todolistid = DELETE FROM #variables.tableprefix#todolists WHERE projectID = AND todolistID =