Hi,

it's a known bug and it's on my list.
By now you could use the oracle syntax for outer joins.
Your statement should look like

 SELECT
        A.QUALIFICATION_ID,
        A.Description,
        B.STD_WD,
        C.QUALITY
 FROM
        TB_KN_STAFF_QUALIFICATION A,
        (       SELECT
                        QA.IDCOL                AS IDCOL,
                        QC.TRANSLATE_TEXT       AS STD_WD,
                        QA.ORDERCOL             AS ORDERCOL
                FROM
                        TB_BASE_TMP_TREE_REFS   QA,
                        TB_STD_KNOWLEDGE        QB,
                        TB_BASE_LNG_TEXT        QC
                WHERE
                        QA.IDCOL        = QB.KNOWLEDGE_ID AND
                        QB.TEXT_ID      = QC.TEXT_ID AND
                        QC.LNG_ID       = '1'
        ) B, 
        (       SELECT
                        WB.QUALITY_ID           AS Q_ID,
                        WD.TRANSLATE_TEXT       AS QUALITY
                FROM
                        TB_STD_QUALITY          WB,
                        TB_BASE_LNG_TEXT        WD
                WHERE
                        WD.LNG_ID       = '1' and
                        WB.TEXT_ID      = WD.TEXT_ID
        ) C,
 WHERE
   A.KNOWLEDGE_ID=B.IDCOL (+)
   A.QUALITY_ID=C.Q_ID (+)
   A.STAFF_ID='5'
 ORDER BY
        B.ORDERCOL

Kind regards 
Holger 
SAP Labs Berlin

> -----Original Message-----
> From: Thomas Markus [mailto:[EMAIL PROTECTED]]
> Sent: Donnerstag, 23. Mai 2002 12:37
> To: sapdb.general
> Subject: maybe a too complex query?
> 
> 
> Hi,
> 
> the following statement died with error:
> SAP DBTech SQL: [-3014] (at 374) Invalid end of SQL statement
> 
> that statement runs ok with oracle
> 
> the cols KNOWLEDGE_ID and QUALITY_ID in 
> TB_KN_STAFF_QUALIFICATION can be 
> NULL, i can't use views, because TB_BASE_TMP_TREE_REFS is normally 
> TEMP.TB_BASE_TMP_TREE_REFS
> 
> the statement runs ok if I use only one left join
> 
> i use a jdbc connect to sapdb 7.3.0.21 on linux x86
> 
> is it too complex?
> 
> thanks
> 
> thomas
> 
> ------------------------------------------------------------------
> SELECT
>       A.QUALIFICATION_ID,
>       A.Description,
>       B.STD_WD,
>       C.QUALITY
> FROM
>       TB_KN_STAFF_QUALIFICATION A
>       LEFT JOIN
>       (       SELECT
>                       QA.IDCOL                AS IDCOL,
>                       QC.TRANSLATE_TEXT       AS STD_WD,
>                       QA.ORDERCOL             AS ORDERCOL
>               FROM
>                       TB_BASE_TMP_TREE_REFS   QA,
>                       TB_STD_KNOWLEDGE        QB,
>                       TB_BASE_LNG_TEXT        QC
>               WHERE
>                       QA.IDCOL        = QB.KNOWLEDGE_ID AND
>                       QB.TEXT_ID      = QC.TEXT_ID AND
>                       QC.LNG_ID       = '1'
>       ) B ON (A.KNOWLEDGE_ID=B.IDCOL)
>       LEFT JOIN
>       (       SELECT
>                       WB.QUALITY_ID           AS Q_ID,
>                       WD.TRANSLATE_TEXT       AS QUALITY
>               FROM
>                       TB_STD_QUALITY          WB,
>                       TB_BASE_LNG_TEXT        WD
>               WHERE
>                       WD.LNG_ID       = '1' and
>                       WB.TEXT_ID      = WD.TEXT_ID
>       ) C ON (A.QUALITY_ID=C.Q_ID)
> WHERE
>       A.STAFF_ID='5'
> ORDER BY
>       B.ORDERCOL
> )
> ------------------------------------------------------------------
> 
> 
> -- 
> Thomas Markus
> Tel: 030 29 36 399 - 18
> mailto:[EMAIL PROTECTED]
> Proventis GmbH
> Torellstr. 1
> 10243 Berlin
> 
> 
> _______________________________________________
> sapdb.general mailing list
> [EMAIL PROTECTED]
> http://listserv.sap.com/mailman/listinfo/sapdb.general
> 
_______________________________________________
sapdb.general mailing list
[EMAIL PROTECTED]
http://listserv.sap.com/mailman/listinfo/sapdb.general

Reply via email to