Solved

Need to manipulate data in Access table. Using SQL to bring in data and make delete's

Posted on 2013-05-22
5
624 Views
Last Modified: 2013-05-24
I have a table called JD setup with the columns listed below.

JD
---------------------------
OEMPartNumer | OEMDescription    | OEMSubNumber     | OEMSubNumber2    | OEMSubNumber3    | OEMSubNumber4    | OEMSubNumber5    | OEMSubNumber6    | OEMSubNumber7    | OEMSubNumber8    | OEMSubNumber9

Open in new window


I had to go through a series of queries to pull out all the sub numbers. The reason for this is because my original table consisted of the following

JD
---------------------------
OEMPartNumer    | OEMSubNumber    | OEMDescription
AR57112   -   USE PN AR82761   -   AR82761
AR82761   -   USE PN AR88536   -   AR88536
AR88536   -   Lever

Open in new window


So i had to use this series of queries to get all my subnumbers on one row.
This is the step9 query
SELECT DuplicateStep8.OEMPartNumber, DuplicateStep8.OEMDescription, DuplicateStep8.OEMSubNumber, DuplicateStep8.OEMSubNumber2, DuplicateStep8.OEMSubNumber3, DuplicateStep8.OEMSubNumber4, DuplicateStep8.OEMSubNumber5, DuplicateStep8.OEMSubNumber6, DuplicateStep8.OEMSubNumber7, DuplicateStep8.OEMSubNumber8, JD.OEMPartNumber AS OEMSubNumber9
FROM DuplicateStep8 LEFT JOIN JD ON DuplicateStep8.OEMSubNumber8 = JD.OEMSubNumber1;

Open in new window


So now i want to get all these sub numbers back to my original table JD

Thing is my query was causing duplicates. This is because on of the sub numbers referenced a sub number not inline with the others. Look at the table below for an example.

OEMPartNumber	OEMDescription	OEMSubNumber	OEMSubNumber2	OEMSubNumber3
AFH205783	HOOK	AE48700	AE32450	AE23128						
AFH205783	HOOK	AE48700	AE32450	AE22894	

Open in new window

     

So if OEMPartNumbers are duplicated i need to compare OEMSubNumbers until they are different then move the different OEMSubNumber to the row to keep in the next available OEMSubNumber and delete the other row where the OEMSubNumber came from so i dont end up with duplicates.

I need this all on one table to users on my website can search OEMPartNumber or any of the OEMSubNumbers. That compares to another table i have shown below

AMI
---------------------------
Item            | OEMItem   | Description
AMAR65123       | AR65123   | Axle
AMAR56242       | AR12345   | Spindle

Open in new window

     

the OEM Number that is searched is found in the JD Table and all of those numbers on that row are compared to OEMItem and if any match then it shows the user the Item (which is my companies part number)

That is the site i built for users to make their searches.
http://bakerabilene.com/interchange.aspx

Thank you for any help in this matter.
0
Comment
Question by:bignadad
  • 3
  • 2
5 Comments
 
LVL 92

Expert Comment

by:Patrick Matthews
ID: 39190521
So i had to use this series of queries to get all my subnumbers on one row.

Instead of fixing your queries, I must ask: why did you do that in the first place?  It appears that your original data was at least somewhat normalized, but your process is denormalizing it...
0
 
LVL 2

Author Comment

by:bignadad
ID: 39190629
When a user searches an OE number i need all those subnumbers to match. So when the OEMPartNumber and OEMSubnumbers(all of them) are found they all compare to OEMItem on AMI Table.

How else could i do it without denormalizing data?
0
 
LVL 92

Accepted Solution

by:
Patrick Matthews earned 500 total points
ID: 39190658
Consider what happens when a user searches on OEMNumber and subnumber.  With your data denormalized, you will have to look in at least nine separate subnumber columns in your JD table.  That is usually an indication of bad design.
0
 
LVL 2

Author Comment

by:bignadad
ID: 39190773
okay, that makes sense to me. How else could i do it?

Just looking to get the done the best way possible. Any suggestions are greatly appreciated
0
 
LVL 2

Author Closing Comment

by:bignadad
ID: 39194865
Thanks, ill figure out what i need to do
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

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

I annotated my article on ransomware somewhat extensively, but I keep adding new references and wanted to put a link to the reference library.  Despite all the reference tools I have on hand, it was not easy to find a way to do this easily. I finall…
This article describes how to use the timestamp of existing data in a database to allow Tableau to calculate the prior work day instead of relying on case statements or if statements to calculate the days of the week.
Show developers how to use a criteria form to limit the data that appears on an Access report. It is a common requirement that users can specify the criteria for a report at runtime. The easiest way to accomplish this is using a criteria form that a…
In Microsoft Access, learn different ways of passing a string value within a string argument. Also learn what a “Type Mis-match” error is about.

895 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

Need Help in Real-Time?

Connect with top rated Experts

13 Experts available now in Live!

Get 1:1 Help Now