TSQL (como se usa en MS SQL Server 2000 y 2005) permite múltiples cláusulas JOIN, una después de la otra, sin comas ni paréntesis necesarios. Pruebe esto en Access y arroja un ajuste: "Error de sintaxis (operador faltante) en la expresión de consulta ..."Convertir TSQL a MS-Access SQL
Por lo que he podido reunir en Google-land, Access SQL quiere que los paréntesis agrupen el Cláusulas JOIN. La mayoría de los consejos sobre cómo lograr esto es usar la vista de diseño o el asistente de consultas, y dejar que Access averigüe dónde colocar los paréntesis (que NO son necesarios en el SQL estándar). El problema es que estoy tan acostumbrado a hacer mi SQL en un editor de texto (Bloc de notas, SSMS, VS2005, lo que sea) que la vista de diseño y el asistente se ponen en el camino y hacen que mi piel se arrastre. A veces los asistentes hacen suposiciones erróneas sobre a qué unirse si hay múltiples posibilidades, y estoy tan acostumbrado a hacerlo en TSQL que preferiría dejar a los asistentes fuera de él.
¿No hay una herramienta que convierta TSQL en Access SQL, o al menos un conjunto de reglas sobre dónde poner los paréntesis?
Ejemplo:
SELECT ...
FROM Participant PAR
INNER JOIN Individual IND
ON PAR.APETSID = IND.APETSID
INNER JOIN Ethnicity ETH
ON IND.EthnicityID = ETH.ID
INNER JOIN Education EDU
ON IND.EducationID = EDU.ID
INNER JOIN Marital MAR
ON IND.Marital = MAR.ID
INNER JOIN Participant-Probation PXP
ON PAR.ID = PXP.ParticipantID
INNER JOIN Probation PBN
ON PXP.ProbationID = PBN.ID
INNER JOIN Class-Participant CXP
ON PAR.ID = CXP.ParticipantID
INNER JOIN Class CLS
ON CXP.ClassID = CLS.ID
INNER JOIN Official OFR
ON PAR.ReferringPO = OFR.ID
INNER JOIN Participant-Official PXO
ON PAR.ID = PXO.ParticipantID
INNER JOIN Official OFA
ON PXO.OfficialID = OFA.ID
Se encontró que el uso de la sintaxis compatible con SQL Server (ANSI 92) tampoco es de ayuda. – JeffO