我看到过一些类似的帖子,但我发现没有什么是真正有意义的或我尝试过的作品。实际上,我需要在3列上选择distinct,但返回表中的所有列。到目前为止,这就是我所拥有的:
SELECT *
FROM tbl1
WHERE tblKey IN (SELECT DISTINCT personKey, contentkey, EmailKey
FROM tbl1
WHERE (Application = 'website' OR Application =
'connect') AND
(contentKey IN (12, 13, 14, 16, 17, 18 , 19)) AND
(channelKey = 1))
子查询中的where语句是因为这只应应用于where子句的内容(很明显,但要确保知道我没有试图删除where子句中的重复项)。这个查询显然不起作用,因为tblkey不在子查询中,但是我想不出解决这个问题的方法。
1条答案
按热度按时间mrphzbgm1#
如果希望每个键组合有一个示例行,那么代码将使用聚合函数:
我确实认为使用窗口函数来表达这一点更为常见: