Search code examples
ms-accessinner-join

MS ACCESS: INNER JOIN Always TRUE (e.g. ON TRUE | ON 1 = 1)



Hi Everyone,

I am trying to do a calculation between two tables and want the INNER JOIN to be always TRUE.

However, when I enter in MS ACCESS the error says the "JOIN-expression is not supported".

Any idea how I can deal with it to make it work? Or does MS ACCESS not allow ON TRUE expression in general?

SELECT A.Part, (Sqr(([T.R_SCHWERPKT_GK3]-[A.LX])^2+([T.H_SCHWERPKT_GK3]-[A.LY])^2)) AS ABSTAND INTO ABSTAND_CALC FROM AVANI_FPF_SSR0 AS A INNER JOIN G_IVL_KOORDINATEN AS T ON 1 = 1;

Many thanks, regards Sina


Solution

  • An INNER JOIN on everything is a cross join.

    In Access SQL, we write cross joins by omitting the JOIN clause entirely, and separating the tables by a comma:

    SELECT A.Part, (Sqr(([T.R_SCHWERPKT_GK3]-[A.LX])^2+([T.H_SCHWERPKT_GK3]-[A.LY])^2)) AS ABSTAND INTO ABSTAND_CALC 
    FROM AVANI_FPF_SSR0 AS A, G_IVL_KOORDINATEN AS T;