具有两个不同语句的SQL

具有两个不同语句的SQL,sql,oracle,Sql,Oracle,这个查询不返回任何行,处理的行是199,这是绝对正确的。 当我尝试将此语句与另一个表联接时,出现了问题 我有另一个名为CSSC_QUALITY_DATA的表,其中包含字段“Created_by”和其他字段。当我在该字段和CSSC_MASTER_视图之间创建联接时,“Created_by”(创建人),已处理返回的行数与我的第一个结果199不匹配 在这里我知道了原因。第二个表有多个“Created_by”字段。如何在这两个表之间建立关系我想您只需要在连接上使用ON子句,类似这样: SELECT DI

这个查询不返回任何行,处理的行是199,这是绝对正确的。 当我尝试将此语句与另一个表联接时,出现了问题

我有另一个名为CSSC_QUALITY_DATA的表,其中包含字段“Created_by”和其他字段。当我在该字段和CSSC_MASTER_视图之间创建联接时,“Created_by”(创建人),已处理返回的行数与我的第一个结果199不匹配


在这里我知道了原因。第二个表有多个“Created_by”字段。如何在这两个表之间建立关系

我想您只需要在连接上使用ON子句,类似这样:

SELECT DISTINCT CSSC_MASTER_VIEW."Created_by",
                SUM (CSSC_MASTER_VIEW.NO_OF_LINES_PROCESSED),
                CSSC_MASTER_VIEW.TYCO_CALENDAR_MONTH_NM,
                CSSC_MASTER_VIEW.TYCO_CALENDAR_YEAR_ID,
                CSSC_MASTER_VIEW."Source_ID"
  FROM CCO.CSSC_MASTER_VIEW CSSC_MASTER_VIEW
 WHERE     (CSSC_MASTER_VIEW."Created_by" = 'TE160961')
       AND (CSSC_MASTER_VIEW.TYCO_CALENDAR_MONTH_NM = 'JULY')
       AND (CSSC_MASTER_VIEW.TYCO_CALENDAR_YEAR_ID = 2013)
       AND (CSSC_MASTER_VIEW."Source_ID" = '10')
GROUP BY CSSC_MASTER_VIEW."Created_by",
         CSSC_MASTER_VIEW.NO_OF_LINES_PROCESSED,
         CSSC_MASTER_VIEW.TYCO_CALENDAR_MONTH_NM,
         CSSC_MASTER_VIEW.TYCO_CALENDAR_YEAR_ID,
         CSSC_MASTER_VIEW."Source_ID"
最后,为了避免使用distinct,请在
GROUP BY
子句中放入需要区分的所有内容:

JOIN CSSC_QUALITY_DATA ON CSSC_MASTER_VIEW."Created_by" =  CSSC_QUALITY_DATA."Created_by"

通过这种方式,您可以避免使用distinct,并通过Group BY获得相同的预期结果。

请编辑您的问题,再次粘贴查询,然后使用鼠标选择查询文本并单击
代码示例{}
编辑器窗口顶部的图标,使查询可读。感谢您提供的信息。我已经做到了,谢谢你。事实上,我的sql不是很好。我尝试过这种说法,但没有成功。我正处于学习阶段。如果您不介意的话,可以将完整的语句粘贴到这里。更改group by子句,添加“Created_by”字段,如我的示例所示,并删除select附近的distinct子句……这对我很有效。最后一个问题,我需要CSSC_QUALITY_数据表中的所有记录。我可以在这里用右手吗?代替简单连接。
GROUP BY CSSC_MASTER_VIEW."Created_by",
         CSSC_QUALITY_DATA."Created_by",