如何列出Oracle表中两列包含相同值的行?
我在oracle数据库工作,面临一些困难。我有两列作为示例A和B。A的一些记录在B中具有相同的值,因此我想找出A中哪些记录在B中具有相同的值。为了更好地理解,请查看下面的示例 例如,我如何找到(COL1)中哪些记录的(COL2)值与示例CRQ13423和CRQ19876中的(COL2)值相同,它们都具有相同的ARN767如何列出Oracle表中两列包含相同值的行?,oracle,Oracle,我在oracle数据库工作,面临一些困难。我有两列作为示例A和B。A的一些记录在B中具有相同的值,因此我想找出A中哪些记录在B中具有相同的值。为了更好地理解,请查看下面的示例 例如,我如何找到(COL1)中哪些记录的(COL2)值与示例CRQ13423和CRQ19876中的(COL2)值相同,它们都具有相同的ARN767 COL1 COL2 --------------------------- 1-CRQ14352-ARN011 2-CRQ17672-ARN068 3-CRQ13423-ARN
COL1 COL2
---------------------------
1-CRQ14352-ARN011
2-CRQ17672-ARN068
3-CRQ13423-ARN767
4-CRQ18782-ARN666
5-CRQ19876-ARN767
我们可以在这里使用计数
作为分析函数:
WITH cte AS (
SELECT COL1, COL2, COUNT(*) OVER (PARTITION BY COL2) cnt
FROM yourTable
)
SELECT COL1, COL2
FROM cte
WHERE cnt > 1;
那么呢?以您为例,这是一个结果还是两个结果(CRQ13423和CRQ19876)?