如何在Cognos-11中使用exceptjoin?

如何在Cognos-11中使用exceptjoin?,join,cognos-11,Join,Cognos 11,我除了加入Cognos-11之外没有其他机会。我错过了什么 对这个分支的初学者有一些了解会很好- 到目前为止,我试着提出两个问题。第一个包含客户、开始日期和目的等数据项。第二个查询保存客户、地址和社区等数据项。 我想完成的是进入query3:来自query1的客户在query2中不可用。对我来说,这听起来像是一个例外 我进入查询工作区,创建了一个query3,并在上面拖动了一个except join图标。然后我把query1拖到上面的空间,把query2拖到下面的空间。我习惯于使用其他连接,可以

我除了加入Cognos-11之外没有其他机会。我错过了什么

对这个分支的初学者有一些了解会很好-

到目前为止,我试着提出两个问题。第一个包含客户、开始日期和目的等数据项。第二个查询保存客户、地址和社区等数据项。 我想完成的是进入query3:来自query1的客户在query2中不可用。对我来说,这听起来像是一个例外

我进入查询工作区,创建了一个query3,并在上面拖动了一个except join图标。然后我把query1拖到上面的空间,把query2拖到下面的空间。我习惯于使用其他连接,可以设置新的链接、基数等等。现在双击连接不会打开任何弹出窗口。except join show集合操作的属性=except,副本=删除,投影列表=手动


如何让query3中填入数据项customer,该数据项仅包含仅出现在query1中的客户列表?

除非不是联接。它用于比较两个数据集

您需要的是内部连接。这将是Cognos工具箱中的联接工具。

用SQL术语来说,您需要

select T2.C1
from T1
  left outer join T2 on T1.C1 = T2.C1
where T2.C1 is null
因此,在Cognos报告的查询窗格中

使用常规联接。 使用两个查询中的customer进行连接。 在query1侧将基数更改为1..1,在query2侧将基数更改为0..1。 在query3的筛选器中,为query2添加筛选器。customer为null。
好的,很清楚。这是一个比较。当我重读它时,这就是这个问题的实质。但是,内部连接不是会给我所有对应的数据,而不是来自query1的唯一数据吗?在这种情况下,内部连接实际上是一个过滤器。如果有一个表的值为a、b、c,另一个表的值为a、b、d。从T1上的T1内部联接T2中选择T2.C1。C1=T2.C1将返回a和b。这是一个相当晚的注释。。。对不起。。。我分心了。。。我真正想要的是一个回报,根据你在最近评论中使用的例子,它会给我一个“c”。在Cognos中,我不知道如何使用您提到的select语句。在Cognos中,您可以在这个屏幕上拖放查询。我不知道如何输入这样的SQL语句。我确实知道SQL Developer中的这种语句方式。是的,老帖子。哇!我的回答没有回答你的问题。见新答案。