Solved

Query base on Many-to-Many relationship

Posted on 2013-05-10
4
364 Views
Last Modified: 2013-06-21
Customer Table: tblCustID(AutoN); tblCustFName(Text); tblCustLName(Text); tblCustLocal(Number)

frmCustomerInfo:  tblCustID; tblCustFName; tblCustLName; these are text boxes
tblCusLocal(ComboBox) Properties: SELECT tblLocal.tblLocalID, tblLocal.tblLocalName, tblOrganization.tblOrganizationName FROM tblLocal INNER JOIN tblOrganization ON tblLocal.tblLocalID=tblOrganization.[tblOrganizationLocal];

frmOrders:  tblOrdersDate(Date) TextBox; tblOrdersSeason(text) ComboBox; tblOrdersID(Auto)TextBox; tblOrdersCustID(text)ComboBox... There is a subForm that contain products purchased.

Here's my problem - when I run the query do display the orders sorted by customer and organization I get duplicate records for each customer cause each location has multiple organizations and to get from the tblcustomer to the tblorganization, I have to go through the tbllocal
(one-to-many betwn tblcustomer and tblorganization where tbllocal is the one in both relationships).  
The results give me locals plus all the organization that that local has associated with it for each customer, but if you examine the above info in up top, U can C that, when I enter the customer info in the frmCustomer, I pick a specific local/organization combination.  I know I'm leaving out some info, but I figure this is a good way to start.
0
Comment
Question by:JZeig
  • 2
4 Comments
 
LVL 119

Expert Comment

by:Rey Obrero
ID: 39157252
the many-to-many relationship should be avoided.
to do this you need a third table ( i think from what you describe, it is the local table )
anyway, see this demo

http://office.microsoft.com/en-us/access-help/demo-set-the-relationship-between-two-tables-HA010254901.aspx?pid=CH100739911033
0
 
LVL 30

Expert Comment

by:hnasr
ID: 39159311
List few records of the table, and show the required output.

Here some info, hope to be helpful.

M-M relation means you have left table(L_ID, ...) and right table(R_ID,...)
the M-M will be a link table between the two (L_ID, R_ID, ....)

Having only the M-M table, you may create 2 queries to represent the left and right tables.

For Left table: LQ (Select Distinct L_ID, ... FROM [M-M] )
For tight table: RQ (Select Distinct R_ID, ... FROM [M-M])

Now you have three tables, LQ, RQ, and [M-M].
0
 

Author Comment

by:JZeig
ID: 39201184
Here are the relationships - this might help

tblOrders: tblOrdersCustID------------------ tblCustomer: tblCustID

                                                    within same table "tblCustomer"

                                                              tblCustomer: tblCustLocal -----------------------------------------
------------------------------tblLocal: tblLocalID

                                                     within same table "tblLocal"
                              tblLocal: tblLocalID---------------------tblOrganization: tblOrganizationLocal

U have query up top.  The desired outcome is only the orders for a specific organization.  If a specific "Local" has multiple "Organization"s, I get duplicates.  I think I need to link the organization first then that way the organization will default to the correct local.  "Local"s have multiple organizations, but the organization is restricted to a specific local.  which I have  setup but I think this backwards.
0
 
LVL 30

Accepted Solution

by:
hnasr earned 500 total points
ID: 39202863
Try to reproduce the issue using a sample database, upload. Use few records.
List the required output and tell which tables the output fields are selected.
0

Featured Post

IT, Stop Being Called Into Every Meeting

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

Join & Write a Comment

This article is a continuation or rather an extension from Cascading Combos (http://www.experts-exchange.com/A_5949.html) and builds on examples developed in detail there. It should be understandable alone, but I recommend reading the previous artic…
QuickBooks® has a great invoice interface that we were happy with for a while but that changed in 2001 through no fault of Intuit®. Our industry's unit names are dictated by RUS: the Rural Utilities Services division of USDA. Contracts contain un…
With Microsoft Access, learn how to specify relationships between tables and set various options on the relationship. Add the tables: Create the relationship: Decide if you’re going to set referential integrity: Decide if you want cascade upda…
Polish reports in Access so they look terrific. Take yourself to another level. Equations, Back Color, Alternate Back Color. Write easy VBA Code. Tighten space to use less pages. Launch report from a menu, considering criteria only when it is filled…

746 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

11 Experts available now in Live!

Get 1:1 Help Now