complex Query (working out totals)

Hi,

I would like help with a quite complex SQL statement.  It involves 2 tables.

The first table (table1) look like this:

table1

identifier      Req      Parent
ID-001      5      FM
ID-002      4      FM
ID-003      12      FM
ID-004      21      PL
ID-005      40      FM
ID-006      1      PL
ID-007      10      PL
ID-008      8      FM

The second table (table2) looks like this

identifier      QTY
ID-001      2
ID-001      4
ID-001      1
ID-002      30
ID-004      40
ID-002      1
ID-007      10
ID-008      8

I’m trying to produce a recordset that could populate a list control with the data that would result from following these steps:

1.      Select table1.identifiers where table1.Parent = FM.
2.      For each row in table2 search table.identifer for a matching record, then add up the table2.QTY values for resulting records found
3.      Zero should added where no values can be found

Given the example above it should produce the following results:

identifier      Req      qty
ID-001      5      7
ID-002      4      31
ID-003      12      0
ID-005      40      0
ID-008      8      8

Could this be done?
andyw27Asked:
Who is Participating?

Improve company productivity with a Business Account.Sign Up

x
 
davehilditchConnect With a Mentor Commented:
select a.identifer, a.req, sum(b.qty) as qty
from table1 as a
left join table2 as b
on a.identifier = b.identifier
group by a.identifier, a.req
0
 
davehilditchCommented:
actually, that will give nulls for id3 and id5 so modify the sum(b.qty) part to:

isnull(sum(b.qty), 0) as qty
0
 
Rey Obrero (Capricorn1)Connect With a Mentor Commented:
is this in access?

SELECT tbl1.identifier, tbl1.req, nz(Sum(tbl2.qty),0) AS Totqty
FROM tbl1 LEFT JOIN tbl2 ON tbl1.identifier = tbl2.identifier
WHERE tbl1.parent="fm"
GROUP BY tbl1.identifier, tbl1.req;
0
Build your data science skills into a career

Are you ready to take your data science career to the next step, or break into data science? With Springboard’s Data Science Career Track, you’ll master data science topics, have personalized career guidance, weekly calls with a data science expert, and a job guarantee.

 
andyw27Author Commented:
Thanks for the suggestion, just trying to get them to work within a vba function.
0
 
andyw27Author Commented:
yes its access.
0
 
Rey Obrero (Capricorn1)Commented:
i suggest that you try the query first,

and post your vba codes here so we can correct it.
0
 
andyw27Author Commented:
Excellent got it to work, if you are both happy I'll do a 50/50 split of points for this.
0
 
davehilditchCommented:
that's cool by me - it's up to you how you split the points anyway
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.