Search code examples
sqlgroup-bysap-asehaving

SQL HAVING COUNT WITH TWO COLUMNS


I have the following tableA

COL1 COL2 COL3
 A    1    10-1-2019
 B    4    13-4-2019
 A    1    13-4-2019
 A    1    10-1-2019
 A    1    10-1-2019
 C    3    20-4-2020
 A    1    13-4-2019

I this is the sql code i wish to write but the count do not accept two elements :

select COL1,COL2,COL3
from TableA
group by COL1,COL2,COL3,
HAVING COUNT(COL1,COL2) > 2

And only the result A 1 10-1-2019 should appear because it is the only one that have the pair COL1 COL3 with more than 2 results(in this case three times). The pair COL1 /COL3 is something like a composed primary key
How can i achieve this ?

My database is Sybase ASE

Thanks in advance.


Solution

  • I think this does what you want:

    select COL1, COL2, COL3
    from TableA
    group by COL1, COL2, COL3,
    HAVING COUNT(*) > 2;
    

    Perhaps you have a bad example. But I don't see why you think you need to exclude col2.