SQL syntax--getting demoralized

M

middletree

Where? Around the INNER JOINs? I don't see how that is possible, as the
parentheses will be uneven, depending on what was selected.

(watch the wrap)

strSQL = "SELECT DISTINCT Personal.FName, Personal.LName,
Personal.PreferredName, Personal.PersonalID "
strSQL = strSQL & "FROM (((Personal "
If strGiftID <> "" then
strSQL = strSQL &"INNER JOIN PersonalGift ON Personal.PersonalID
=PersonalGift.PersonalID) "
End if
If strAbilityID <> "" then
strSQL = strSQL & "INNER JOIN PersonalAbility ON Personal.PersonalID
=PersonalAbility.PersonalID) "

etc. See what I mean?
 
T

TomB

No, sorry. The way you originally had it.....


if len(strGiftID)>0 then
sWhere="PersonalGift.GiftID=" & strGiftID & " AND "
end if
etc.

strSQL=strSQL & sWhere
 
M

middletree

Well, the problem got fixed. I have a firend, a former co-worker, and he
added some code fairly quickly. In anyone cares, here it is:

strSQL = "SELECT DISTINCT Personal.FName, Personal.LName,
Personal.PreferredName, Personal.PersonalID "
strSQL = strSQL & "FROM (((Personal LEFT OUTER JOIN PersonalGift ON " strSQL
= strSQL & "Personal.PersonalID =PersonalGift.PersonalID) "
strSQL = strSQL & "LEFT OUTER JOIN PersonalAbility ON Personal.PersonalID
=PersonalAbility.PersonalID) "
strSQL = strSQL & "LEFT OUTER JOIN PersonalPeople ON Personal.PersonalID=
PersonalPeople.PersonalID) "
strSQL = strSQL & "LEFT OUTER JOIN PersonalArea ON Personal.PersonalID=
PersonalArea.PersonalID"

If Len(strGiftID) Or Len(strAreaID) > 0 Or Len(strPeopleID) > 0 Or
Len(strAbility) > 0 Then
strSQL = strSQL & " Where Personal.FName = Personal.FName "
If Len(strGiftID) > 0 Then
strSQL = strSQL & " And Personal.PersonalID In (select PersonalID from
PersonalGift where GiftID = " & strGiftID & ")"
If Len(strAreaID) > 0 Then
strSQL = strSQL & " And Personal.PersonalID In (select PersonalID from
PersonalArea where AreaID = " & strAreaID & ")"
If Len(strPeopleID) > 0 Then
strSQL = strSQL & " And Personal.PersonalID In (select PersonalID from
PersonalPeople where PeopleID = " & strPeopleID & ")" If Len(strAbilityID) >
0 Then
strSQL = strSQL & " And Personal.PersonalID In (select PersonalID from
PersonalAbility where AbilityID = " & strAbilityID & ")"

Thanks, everybody, for your time!
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,770
Messages
2,569,583
Members
45,075
Latest member
MakersCBDBloodSupport

Latest Threads

Top