Solved

Query base on Many-to-Many relationship

Posted on 2013-05-10
4
404 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
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
4 Comments
 
LVL 120

Expert Comment

by:Rey Obrero (Capricorn1)
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

[Webinar] Learn How Hackers Steal Your Credentials

Do You Know How Hackers Steal Your Credentials? Join us and Skyport Systems to learn how hackers steal your credentials and why Active Directory must be secure to stop them. Thursday, July 13, 2017 10:00 A.M. PDT

Question has a verified solution.

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

Access custom database properties are useful for storing miscellaneous bits of information in a format that persists through database closing and reopening.  This article shows how to create and use them.
Access developers frequently have requirements to interact with Excel (import from or output to) in their applications.  You might be able to accomplish this with the TransferSpreadsheet and OutputTo methods, but in this series of articles I will di…
In Microsoft Access, learn the trick to repeating sub-report headings at the top of each page. The problem with sub-reports and headings: Add a dummy group to the sub report using the expression =1: Set the “Repeat Section” property of the dummy…
With Microsoft Access, learn how to start a database in different ways and produce different start-up actions allowing you to use a single database to perform multiple tasks. Specify a start-up form through options: Specify an Autoexec macro: Us…

726 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