Boolean expressions in the where statement
The 'example' you supply does not make sense to me, what * means, as
example, in that context?
I 'assume' that what you try do to is something like:
WHERE checkForOptionA { then use the filter }
fieldOptionA = suppliedValueForOptionA
AND checkForOptionB { then use the filter }
fieldOptionB = suppliedValueForOptionB
AND ...
If so, { then use the filet } is the operator IMP.
example:
WHERE FORMS!tshirts!checkColor IMP color = FORMS!tshirts!tshirtColor
AND FORMS!tshirts!checkSize IMP size = FORMS!tshirts!tshirtSize
which would check for the supplied color and size only if two 'matching'
check box are check; if only one check box is checked, only the matching
property will be filtered; if no check box are check, nothing will be
filtered.
(I also assume the form name is tshirts, and the controls should be
obvious. IMP is a Boolean operator, like AND , OR , ... which acts like
.... intended, here.)
Vanderghast, Access MVP
"Paul Washburn" wrote in message
...
Im trying to build a form with multiple check boxes that each apply a
filter
to the records displayed. I need for the user to be able to select any
combination of the checkboxes and have the resulting records filtered
accordingly.
I was thinking something along the lines of a "select" or statement or an
if...else loop, but unfortunately im fairly new with sql am having trouble
with the syntax, assuming its even possible.
Something along the linse of:
Select * from Table Where
If (chkA = true) then chkA
Else (chkB = true) then chkB
else (chkA = true) and (chkB = true) then chkA and chkB
else *;
Any help would be greatly appreciated.
|