SQL查询的优先级

时间:2011-12-04 13:43:50

标签: sql

三张桌子:

Employees {EmployeeID, EmployeeName}  
Courses {CourseID, CourseName}
TrainingLog {LogID, EmployeeID, CourseID)

课程中还有一个职位,优先考虑的是给以前从未完成课程的人,然后是那些已经完成课程而不是课程的人,然后是任何人。必须填写课程。

是否可以在一个查询中找到相应的员工?

2 个答案:

答案 0 :(得分:2)

雅。可以办到。 通过TrainingLog加入有关课程的员工。

一些员工将无法匹配产生NULL courseid。 在DESC首先在列表中对NULL进行排序。

按rownum排名,然后选择第一行。

如果没有第一行,则没有人可以分配给该类。 除此以外, 如果列表中的第一个将是要分配的人。

答案 1 :(得分:1)

基于您要解决的问题,如果您只是单独使用查询来执行此操作,那么您必须使用您的应用程序处理逻辑,或许您希望为此创建存储过程一种条件。