我想检查所有员工和位置。一个地方有多名员工。所以我的条件是我希望所有员工身份都处于非活动状态的所有地点。
例如emp表是
email
结果应为
Collections.sort(usersList, new Comparator<User>() {
@Override
public int compare(User obj1, User obj2) {
int res = 0;
//to make sure null names at the end
if (obj1.getFullName() == null && obj2.getFullName() == null)
res = 0;
if (obj1.getFullName() == null)
res = 1;
if (obj2.getFullName() == null)
res = -1;
//logic for name sorting then email sorting
if (obj1.getFullName() != null && obj2.getFullName() != null)
res = obj1.getFullName().compareTo(obj2.getFullName());
if (res == 0)
res = obj1.getEmail().compareTo(obj2.getEmail());
return res;
}
});
答案 0 :(得分:1)
如果您希望所有状态都处于非活动状态的位置,我建议group by
:
select loc
from t
group by loc
having min(status) = max(status) and min(status) = 'inactive';
答案 1 :(得分:0)
这个怎么样?
SELECT DISTINCT loc, status
FROM my_table
WHERE loc NOT IN (SELECT DISTINCT loc WHERE status = 'active);
这将为您提供所有未激活的位置。