Here is a sample table that mimics my scenario:
COL_1 COL_2 COL_3 COL_4 LAST_COL
A P X NY 10
A P X NY 11
A
SELECT COL_1, COL_2, COL_3, COL_4, COUNT(*)
FROM MyTable
GROUP BY COL_1, COL_2, COL_3, COL_4
If you ever want to weed out rows that don't have a duplicate:
SELECT COL_1, COL_2, COL_3, COL_4, COUNT(*)
FROM MyTable
GROUP BY COL_1, COL_2, COL_3, COL_4
HAVING COUNT(*) > 1
If I am understanding correctly all you need is something like:
SELECT COL_1,COL_2,COL_3,COL_4, COUNT(*) AS TOTAL
FROM table
GROUP BY COL_1,COL_2,COL_3,COL_4
The GROUP BY is what you want here. For example:
SELECT COL_1, COL_2, COL_3, COL_4, COUNT(*)
FROM my_table
GROUP BY COL_1, COL_2, COL_3, COL_4
are having most number of rows
So you want to count, and then ORDER BY the count DESC
SELECT COL_1, COL_2, COL_3, COL_4, COUNT(*) COUNT_ROWS
FROM TBL
GROUP BY COL_1, COL_2, COL_3, COL_4
ORDER BY COUNT_ROWS DESC