1
다음 쿼리를 만들려고 노력했지만 처음부터 시도했지만 어디에서 왔는지 모릅니다. 각 테이블에 엔티티가 있다고 가정 할 때 Criteria Builder를 사용하여이 쿼리를 어떻게 만들 수 있습니까?기준 JPA 2, 최대 절전 모드 - 복수 조인
SELECT *
FROM TCTIPort as CTIPort
INNER JOIN TCTIBoardType AS BoardType
ON CTIPort.BoardType = BoardType.BoardType
LEFT JOIN TSysPort AS Port
ON CTIPort.Switch = Port.Switch AND
CTIPort.Machine = Port.Machine AND
CTIPort.Port = Port.Channel
LEFT JOIN TSysMachineId AS Mach
ON Mach.IdApp = Port.IdApp AND
Mach.IdTypeApp = Port.IdTypeApp
LEFT JOIN TUnPbxGenericValue AS Gen
ON CTIPort.Machine = Gen.Machine AND
CTIPort.Port = Gen.Port
LEFT JOIN TUnPbxGenericName AS GName
ON GName.IdGenericName = Gen.IdGenericName
LEFT JOIN TSysTypeOfApp STA
ON STA.IdTypeOfApp = Port.IdTypeApp
LEFT JOIN TSysApplication AS SysApp
ON SysApp.IdApp = Port.IdApp
AND SysApp.idTypeOfApp = Port.idTypeApp
WHERE
LTRIM(RTRIM(BoardClass)) IN ('MSI', 'TAP') AND
CTIPort.Switch = @Switch AND
CTIPort.Machine = @Machine AND
(CTIPort.Port = @Port OR @Port IS NULL) AND
(Mach.Machine LIKE @NameMachine OR
Gen.GenericValue LIKE @NameMachine OR
@NameMachine IS NULL)
ORDER BY
CTIPort.Port
각 열에 인터페이스 "JOIN"을 사용해야합니까? 조인에 "AND"조건을 어떻게 추가합니까?
몇 가지 예제를 검색했지만 간단한 쿼리 (withou "and"및 더 이상의 테이블이 없으면 max 2) 만 보여줍니다.