Solved

MS ACCESS - flag duplicates in to the same table

Posted on 2010-11-09
7
1,074 Views
Last Modified: 2012-06-27
(1) My ACCESS Table1 has following columns, i.e., Field1, Field2, Field3, ..., Field 10 with 750,000 records.

(2) FIELD2 is supposed to contain unique value, but somehow there are over 10,000 duplicate values in it. I found this by using

SELECT Table1.FIELD2, count(Table1.FIELD2) as CheckDupe from Table1 group by 1 where CheckDupe>1

QUESTION:
I'd like to find an effective way to
(A) Make Table1 to have extra column FIELD11 as a flag
(B) FIELD11 = "Yes" If FIELD2 contains duplicate value and "No" when it contains unique value?

I am just an intermediate MS ACCESS level.  I found that the following solution would work, but very inefficient ie.,
(i) Make a text list of dupe values in MS WORD "Value1", "Value2", ...., "Value10000"
(ii) Create an intermediate table (called Table2) from Table1 that contain only 2 fields, i.e., FIELD2 and FIELD11, where as FIELD11 = ""
(iii) write an UPDATE query like this:

UPDATE TABLE2 SET TABLE2.FIELD11 = "Yes"
WHERE TABLE2.FIELD2 IN ("Value1", "Value2", ... , "Value1000");

(iv) run this query. then replace the next thousand values, save and run. then redo this again . . . .  until all 10,000 values are covered.

The problem is 1. I have 5 other tables that have the same problem. I dont want to spend the whole week doing this.  So, Help please.
0
Comment
Question by:Paul_ATL
  • 4
  • 3
7 Comments
 
LVL 58

Assisted Solution

by:cyberkiwi
cyberkiwi earned 250 total points
ID: 34097263
Add a new column into Table1 using the UI.
Run this query (if field2 is textual)

update Table1
set Field11 = IIF(DCount("Field2", "Table1", "Field2='" & Field2 & "'")>0,true, false)
0
 

Author Comment

by:Paul_ATL
ID: 34097500
Hi cyberkiwi,

I did as suggested to add FIELD11.
Then Copy-PASTE your query in to an UPDATE querym but when run, it asks me for "parameter entry" of TABLE1
0
 

Author Comment

by:Paul_ATL
ID: 34097556
Hi cyberkiwi,

Sorry, I made some typos.

Your query runs, but when checking the result, it only updates FIELD11 with value -1 for all records.
0
Enterprise Mobility and BYOD For Dummies

Like “For Dummies” books, you can read this in whatever order you choose and learn about mobility and BYOD; and how to put a competitive mobile infrastructure in place. Developed for SMBs and large enterprises alike, you will find helpful use cases, planning, and implementation.

 

Accepted Solution

by:
Paul_ATL earned 0 total points
ID: 34097655
Hi cyberkiwi,

I works now. I change >0 to >1
Thanks for your help. Save me lots of time.
0
 
LVL 58

Expert Comment

by:cyberkiwi
ID: 34097665
What type is Field2?

Another approach, make Field11 a Number field, then try this query:

update Table1
set Field11 = DCount("Field2", "Table1", "Field2='" & Field2 & "'")

Actually never mind, I see the error. It should be greater than 1...

update Table1
set Field11 = IIF(DCount("Field2", "Table1", "Field2='" & Field2 & "'")>1,true, false)
0
 
LVL 58

Expert Comment

by:cyberkiwi
ID: 34097685
You're welcome! Makes me happy when askers help themselves :)
0
 

Author Closing Comment

by:Paul_ATL
ID: 34130279
Great advice, just minor issue on >1 instead of >0 but I can figure this out.  But certainly, without his advice, I will NEVER figure to use DCOUNT.

Thanks a bunch
0

Featured Post

Ransomware-A Revenue Bonanza for Service Providers

Ransomware – malware that gets on your customers’ computers, encrypts their data, and extorts a hefty ransom for the decryption keys – is a surging new threat.  The purpose of this eBook is to educate the reader about ransomware attacks.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

The canonical version of this article is on my web site here: http://iconoun.com/articles/collisions/ A companion presentation is available here: http://iconoun.com/articles/collisions/Unicode_Presentation.pdf
User Beware!  This is a rather permanent solution to removing your email from an exchange server.  The only way to truly go back is to have your exchange administrator restore your mailbox from backups.  This is usually the option of last resort.  A…
Using Microsoft Access, learn some simple rules for how to construct tables in a relational database. Split up all multi-value fields into single values: Split up fields that belong to other things into separate tables: Make sure that all record…
The viewer will learn how to create two correlated normally distributed random variables in Excel, use a normal distribution to simulate the return on different levels of investment in each of the two funds over a period of ten years, and, create a …

831 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question