sql查询当前登陆人所管理的校区下的人员

时间:2023-01-25 02:18:55

StringBuilder sql = new StringBuilder("select accountId, concat( ',', GROUP_CONCAT(FIND_IN_SET(campusId,'").append(joinIds).append("') ) , ',' ) idx " )

.append(" from org_campus_account GROUP BY accountId having idx not like '%,0,%';" );

所有校区joinIds

查询出

org_campus_account 这个表中所有在这个去所有校区中的一条记录。

如果joinIds是一个人拥有的校区1,2,3,4,5

那么查询的结果就是这个org_campus_account 表中所有在1,2,3,4,5中的校区,查询出来的校区,同一个人的所有校区都包含在12345中,如果12345中没有,那么就排除。

如:2,6,这个就不要(idx not like '%,0,%') 这个条件就是排除的,

Org_campus_account中村的数据就是校区和人员的关系

sql查询当前登陆人所管理的校区下的人员

这个sql为了拿到登陆的这个人只能看到他管理校区下的所有人。

他不管理的看不到

总后的结果需要在查询数据中作为条件

sql查询当前登陆人所管理的校区下的人员

需要把这些accountId 作为条件

查询出所有的人,但是这些人的条件是我上边查询出的人的范围中。最后查询出的结果就是我管理的人员。

Select * from xxx where accountId in (这个sql查询出的结果的人员的拼接())