zoukankan      html  css  js  c++  java
  • sql查询当前登陆人所管理的校区下的人员

    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是一个人拥有的校区12345

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

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

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

     

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

    他不管理的看不到

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

     

    需要把这些accountId 作为条件

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

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

  • 相关阅读:
    Linux 用户和组管理
    Bash 基础特性
    Linux 中常用的基础命令二
    Linux 中常用的基础命令一
    Linux 获取帮助
    Linux 基础入门二
    Linux 基础入门一
    计算机基础
    python 操作元组 列表===python中三大宝刀(字典已经再上一遍 说过)
    mysql 创建数据存储过程的申明
  • 原文地址:https://www.cnblogs.com/renjianjun/p/9018109.html
Copyright © 2011-2022 走看看