Subject Re: Inner Joins and 3 tables
Author tractaylor
--- In firebird-support@yahoogroups.com, JoshCooper@u... wrote:
>
> Do firebird (1.5stable) support subqueries? I have the following
statement:
>
> SELECT a.ASSY_CODE FROM MATRIX m
> INNER JOIN MATRIX_CELL_ASSY mca
> ON m.MATRIX_ID = mca.MATRIX_ID WHERE MATRIX_LIB_ID = 3 And
MATRIX_ID = 87
> INNER JOIN ASSEMBLY a
> ON mca.ASSY_ID = a.ASSY_ID WHERE a.ASSY_LIB_ID = mca.ASSY_LIB_ID
>
> which appears to be correct, eachy INNER JOIN works on its on, but
I get an
> error when i get to the second inner join.
> Is it a syntax issue (grouping of some sort) or can this just not
be done
> currently?
>
> Thanks,
>
> Josh Cooper
> Database Administrator
> United States Aluminum
> Phone: 1-800-627-6440 X590
> Fax: 1-972-937-5467


What I think you have to do is move your where statements down after
the join statements

SELECT a.ASSY_CODE FROM MATRIX m
INNER JOIN MATRIX_CELL_ASSY mca
ON m.MATRIX_ID = mca.MATRIX_ID
INNER JOIN ASSEMBLY a
ON mca.ASSY_ID = a.ASSY_ID

WHERE MATRIX_LIB_ID = 3 And MATRIX_ID = 87
and a.ASSY_LIB_ID = mca.ASSY_LIB_ID


Try that.