这是我第一次访问该网站,所以请保持温柔。我试图在这里找到我的答案,但似乎没有什么适合我的,而且在阅读了不同类型的联接之后,我仍然一无所知。
我有以下表格:
employees (employee_id, name)
assessments (assessment_id, name, pass_score)
authorizations (authorization_id, name)
员工进行登录评估:
assessments_taken (assessment_taken_id, employee_id, assessment_id, score)
一项授权由多项个人评估组成:
authorization_requirements (auth_req_id, authorization_id, assessment_id)
其中 authorization_id
和 assessment_id
是防止重复的唯一约束。
我尝试设计的查询大致如下:
SELECT employees.name, authorization.name ...
我只想退还员工和授权,前提是员工已通过authorization_requirements 中给出的授权的所有评估。
谁能帮我找到我要找的查询/子查询?
最佳答案
下图可能对您学习 SQL 连接有所帮助 - 它甚至为您提供了一些 SQL 本身!。至于 authorization_requirements,听起来您需要在连接的同时使用一些 WHERE 子句。
希望这对您有所帮助,如有任何疑问,请随时提问!
关于mysql - 仅当所有行都匹配时,SQL 连接才返回结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25973407/