내 코드에서 제대로 실행되는 쿼리를 발견했지만 where 절이 누락되었습니다.
규칙의 해석이 까다로워지는 버그 또는 특별한 시나리오가 효과가있는 이유는 무엇입니까?이 쿼리가 작동하는 이유는 무엇입니까?
SELECT
C.Id
, C.Name
, C.Qualifying
, CI.PlaceG
, CI.PlaceN
, CI.Hcp
, CI.NewHcp
FROM dbo.Competitions AS C
INNER JOIN dbo.CompInscription AS CI ON (
CI.idcomp = C.id
)
AND C.archived = 1
AND CI.idmembre = 11227
AND CI.placeg IS NOT NULL
AND CI.placen IS NOT NULL
AND CI.Status IN (0, 8)
왜 실행되지 않습니까? AND는 INNER JOIN에 속합니다. 모든 것이 유효합니다. 혼란은 어디에서 오는 것입니까? –
좋아, 나는 ON 절이 발생하는 곳에서 좀 더 읽기 쉬운 코드를 만들기 위해 괄호를 사용하고 있지만 다음 코드가 AND/OR이면 ON 절이 실제로 닫는 괄호로 끝나는 것은 아니다. 당신의 대답에 감사드립니다. – Serge