Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
带WHERE和and的SQL查询条件_Sql_Oracle - Fatal编程技术网

带WHERE和and的SQL查询条件

带WHERE和and的SQL查询条件,sql,oracle,Sql,Oracle,我有这样的疑问 SELECT EDR.DEPT_ID AS DEPT_ID, EMP.EMPLOYEE_ID AS EMPLOYEE_ID, ELD.LOAN_ID AS LOAN_ID, ELD.LOAN_STATUS AS LOAN_STATUS FROM EMP_DEPT_REL EDR INNER JOIN EMPLOYEE_MANUAL EMP

我有这样的疑问

SELECT EDR.DEPT_ID             AS DEPT_ID,
  EMP.EMPLOYEE_ID                AS EMPLOYEE_ID,
  ELD.LOAN_ID                  AS LOAN_ID,
  ELD.LOAN_STATUS                       AS LOAN_STATUS
FROM EMP_DEPT_REL EDR
INNER JOIN EMPLOYEE_MANUAL EMP
ON EDR.EMPLOYEE_ID = EMP.EMPLOYEE_ID
LEFT OUTER JOIN EMPLOYEE_LOAN_DETAIL ELD
ON ELD.LOAN_ID   = EMP.LOAN_ID
AND ELD.DISPLAY_FLAG       = 'Y'
WHERE EDR.DEPT_ID IN ('123');
  • Employee_Manual是一个表格,在该表格中,我们将获得由应用程序手动输入的员工详细信息
  • Emp_dept_rel是员工与部门之间的关系
  • 员工贷款详细信息将包含组织中所有员工的贷款详细信息
  • 我想从该部门的所有相关员工那里获取数据,我将其作为输入传递

    我需要的是

    • 获取员工手册表中的所有员工
    • 如果有 是员工贷款明细表中的条目,那么我应该获得 只有在员工贷款详细信息中将该标志设置为“Y”时,才显示贷款
    • 我们需要显示员工,即使没有详细信息 员工贷款详情
    需要获取在特定部门有贷款的员工的数据。如果员工有外部贷款,我们需要显示贷款明细。(DISPLAY_FLAG='Y')如果是组织提供的内部贷款,它将位于员工贷款明细中,并标记为DISPLAY_FLAG=“N”

    员工贷款详细信息
    员工\u IDLOAD\u IDDISPLAY\u标志
    12350Y
    45651N
    环境管理部
    EMP_ID部门ID
    123987
    456987
    789987
    员工手册
    员工ID加载ID部门ID
    12350987
    45651987
    789987
    
    试试这个:

    SELECT
      EDR.DEPT_ID             AS   DEPT_ID,
      EMP.EMPLOYEE_ID         AS   EMPLOYEE_ID,
      ELD.LOAN_ID             AS   LOAN_ID,
      ELD.LOAN_STATUS         AS   LOAN_STATUS
    
    FROM        EMPLOYEE_MANUAL EMP
    
    INNER JOIN  EMP_DEPT_REL EDR
                ON EDR.EMPLOYEE_ID = EMP.EMPLOYEE_ID
    
    LEFT OUTER JOIN EMPLOYEE_LOAN_DETAIL ELD  
                ON ELD.LOAN_ID   = EMP.LOAN_ID
    
    WHERE EDR.DEPT_ID IN ('123') AND ELD.DISPLAY_FLAG       = 'Y';
    

    您的问题是……?请显示:表架构定义、示例表数据和预期输出。@Tatiana,我已经提到了这些问题作为条件。请解释一下这是一个家庭作业吗?@OldProgrammer,表模式,表employee\u手册employee\u ID LOAN\u ID DEPT\u ID表emp\u DEPT\u rel emp\u ID DEPT\u ID表employee\u LOAN\u detail employee\u ID LOAN\u detail employee\u ID LOAN\u ID LOAN\u ID DISPLAY_FLAG@Venkat请告诉我你面临什么问题。我是说哪些唱片没有出现。
    SELECT
      EDR.DEPT_ID             AS   DEPT_ID,
      EMP.EMPLOYEE_ID         AS   EMPLOYEE_ID,
      ELD.LOAN_ID             AS   LOAN_ID,
      ELD.LOAN_STATUS         AS   LOAN_STATUS
    
    FROM        EMPLOYEE_MANUAL EMP
    
    INNER JOIN  EMP_DEPT_REL EDR
                ON EDR.EMPLOYEE_ID = EMP.EMPLOYEE_ID
    
    LEFT OUTER JOIN EMPLOYEE_LOAN_DETAIL ELD  
                ON ELD.LOAN_ID   = EMP.LOAN_ID
    
    WHERE EDR.DEPT_ID IN ('123') AND ELD.DISPLAY_FLAG       = 'Y';