A solution on that depends strongly on how much values A.Afn would take. For 
3, it's still okay. But i wouldn't do more.

Against what shall the B.Bfn* be checked? What Data do you want to be returned 
from the query?


  ((A.Afn=1) AND (B.Bfn1 = ...)) OR
  ((A.Afn=2) AND (B.Bfn2 = ...)) OR
  ((A.Afn=3) AND (B.Bfn3 = ...))

where you should replace ### with things you want to select and ... with the 
things you want to check.

On more than 3 different values for A.Afn, you should use a more normalized 
version of B.

i.e.: B contains only one Bfn field and a Reference to A.Afn.
 -> SELECT ### FROM A, B WHERE B.AfnRef = A.Afn AND B.Bfn = ...


Am Montag, 7. Oktober 2002 00:33 schrieb Alex Shi:
> Hi,
> I need a where clause in following situation:
> Say I want to query two tables: A and B. In table A there is field
> Afn, while in table B there are 3 fields: Bfn1, Bfn2 and Bfn3. I want
> to do a query, in which the where clause must do these things:
> if A.Afn=1, then check value of B.Bfn1;
> if A.Afn=2, then check value of B.Bfn2;
> if A.Afn=3, then check value of B.Bfn3.
> So how can I create such a where clause to do this?
> Thanks in advance!
> Alex Shi

PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to