Link to home
Create AccountLog in
Avatar of CarlosScheidecker
CarlosScheidecker

asked on

Listing the number of duplicated records on an Oracle table

Hello,

I have a table with:

- Name
- Title
- endDate
- Description
- cdate

Name, Title and endDate are the primary key. If one of them is different, than a record is inserted.

However, since date is a timestamp, if I have it some seconds before or after a new record is created.

What I need to know is the duplicated records were Name and Title are exactly the same.

Something like this would only work when you need to deduplicate the values from one field.
I have 2 fields that needs to be exact.

SELECT     tablefield, COUNT(tablefield) AS dup_count
FROM         table
GROUP BY tablefield
HAVING     (COUNT(tablefield) > 1)

I need to diplay the following results per row/tuple :
- Name, Title and the number of occurences that they show if there are duplicates.

If I can determine that the count of Name.Titles being the same is greater than 1, then I have a duplicated record. How can I do that in Oracle?

Thanks.
Avatar of CarlosScheidecker
CarlosScheidecker

ASKER

Ah yes, I also have an autoincrement field (ID) that is different and unique for each record.
ASKER CERTIFIED SOLUTION
Avatar of slightwv (䄆 Netminder)
slightwv (䄆 Netminder)

Link to home
membership
Create a free account to see this answer
Signing up is free and takes 30 seconds. No credit card required.
See answer
- try this:

SELECT     name, title, COUNT(*) AS dup_count
FROM         table
GROUP BY name, title
HAVING     COUNT(*) > 1
Very, very elegant. Need to add that all the selected fields, but the count, must be on the group by clause.

Thanks!