我设计了以下技巧数据库有三个表:查询一个技能数据库
- 员工的列名,personnelnumber
- 技能栏skillname,skillid
- skillmapping与列skillid,personnelnumber,技能水平
1)和2)只给人员和技能分配数字。 3)为员工分配技能水平。
例如,第1行表3)3 6指人与个人号码3具有技能1号的知识和知识水平为6。
我想要的是检索者谁在同一时间能熟练地
- 技能2知识水平3
- 技能4知识水平5和
- 技能8与知识水平2.
什么是最好的方法来做到这一点?我想先选择符合条件1)的人,然后从他们中选择符合条件2)的人,然后从结果人符合条件3)中选择。但是对于这种方法,我必须使用一些过程式编程语言来创建临时表并超越SQL。没有更好的方法吗?
你好,这将导致熟练的人在2或4或8中。但我需要的人都在同一时间熟练的三个! –
您错过了'having'子句 - 没有全部三个匹配的人将不会从子查询中返回。 – Mureinik
好吧,对不起:-)谢谢! –