Project(pid,name,startYear)
Developer(did,name,hireYear)
WorksOn(pid,did,year)
Originally when I examined this query, I thought the answer was D. However, I would like to walk through my logic for as to why D is correct, and I would appreciate any correction/elaboration that could confirm if I am valid in my justification for D.
The inner most sub query has combinations of all projects, along with specific developers that worked on them in 2015.
The sub query outside of that one is the inverse of that: there exists no projects with developers associated with them in 2015.
The outermost query selects developers that worked on all because the where clause has NOT EXISTS of no projects in 2015. Or you can think that the opposite of no project is all the projects.