首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >子查询是否适用于这种情况?

子查询是否适用于这种情况?
EN

Stack Overflow用户
提问于 2019-01-24 02:43:51
回答 1查看 46关注 0票数 0

我有以下6张表

地区-包含地区id和地区名称

District_access -用于标识用户有权访问哪些地区

operation_centers -包含操作中心id和名称

ops_access -用于标识用户有权访问哪些运营中心

项目-包含项目id和名称

project_access -用于标识用户有权访问哪些项目

我目前正在使用这个查询,它返回用户有权访问的地区、运营中心和项目。问题是,如果用户只能访问地区4,我在编辑页面上看不到任何其他地区,我只能看到地区4和地区4下的运营中心和项目。我需要看到其他地区,以便用户可以被分配访问其他地区、运营中心和项目等,子查询对此有帮助吗?

代码语言:javascript
复制
   select district_access_id,district_user_nm,district_role,district_id,district_name,operation_center_id,operation_center_name,oc_district_id,project_name_id,project_name,project_oc_id
from district_access
left join districts ON district_access.district_access_id = districts.district_id
left join operation_centers ON districts.district_id = operation_centers.oc_district_id
left join projects ON operation_centers.operation_center_id = projects.project_oc_id
where district_user_nm = '#URL.user_id#' AND oc_district_id <> '' and project_oc_id <> '' OR district_user_nm = ''

谢谢,史蒂夫

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-01-24 04:11:18

您的主表(从)应该是用户表,而不是地区访问。从您的用户到所有地区的交叉连接将获得该用户和所有地区的所有排列(或者,您可以在任意语句上使用join,就像在1=1上一样)。此外,您应该在WHERE中使用括号,因为它是OR,以确保逻辑定义清晰。

代码语言:javascript
复制
select district_access_id,district_user_nm,district_role,district_id,district_name,operation_center_id,operation_center_name,oc_district_id,project_name_id,project_name,project_oc_id
from <USERNAME TABLE>
cross join districts
left join district_access ON district_access.district_access_id = districts.district_id
   and <USERNAME TABLE>.user_nm = '#URL.user_id#'
left join operation_centers ON districts.district_id = operation_centers.oc_district_id
left join projects ON operation_centers.operation_center_id = projects.project_oc_id
where <USERNAME TABLE>.user_nm = '#URL.user_id#'
    AND oc_district_id <> ''
    and project_oc_id <> ''
    OR district_user_nm = ''
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54333734

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档