구문 오류 또는 액세스 위반: 1064, LEFT JOIN 조건의 구문 오류
왼쪽 조인 조건을 세 번째 테이블과 함께 사용하여 두 테이블을 조인하는 동안 오류가 발생했습니다.
여기 오류가 있습니다.
SQLSTATE[42000]:구문 오류 또는 액세스 위반: 1064 SQL 구문에 오류가 있습니다. 'ON(cnt)' 근처에서 사용할 올바른 구문은 MariaDB 서버 버전에 해당하는 설명서를 확인하십시오.PKDID = pd.PKDID)에 표시된 대로
led
.PKID
=pkg
.PKID
어디에pkg
.Sta' at line 3 (SQL: select count(*) as aggregate from
꾸러미들as
pkgleft join
사건들as
evon
ev.
EvnId=
pkg.
EvnId' left join(PD 선택).PKDID, PD님BsNaId, cnt.컨텐츠 목록, bn.nature FROM package_dets는 pd, busi_natures는 bnWHERE pd입니다.BsNaId = bn.BsNaId왼쪽 조인(PKID, PKDID, package_detcontents GROUP FROM PKDID) cnt\n ON(cnt)입니다.PKDID = pd.PKDID)에 표시된 대로
led
.PKID
=pkg
.PKID
어디에pkg
.Status
활성 및ev
.enventNm
생일)
여기 제 코드가 있습니다. 오류가 있습니다.
->leftJoin(DB::raw("(SELECT pd.PKDID, pd.BsNaId, cnt.ContentList, bn.nature FROM package_dets as pd, busi_natures as bn WHERE pd.BsNaId = bn.BsNaId
LEFT JOIN(SELECT PKID, PKDID, ContentList FROM package_detcontents GROUP BY PKDID)cnt
ON(cnt.PKDID = pd.PKDID)) as led"),
function($join){
$join->on("led.PKID","=","pkg.PKID");
})
그리고 여기 완전한 코드가 있습니다.
$package = DB::table("packages as pkg")
->select(DB::raw("pkg.PKID, pkg.EvnId, pkg.PkgNm, pkg.link, pkg.cross_price, pkg.off_percent, pkg.images, pkg.price, pkg.forpeople, pkg.Minsrating, pkg.Plsrating, pkg.remark, pkg.Status, led.nature, ev.enventNm"))
->leftJoin("events as ev","ev.EvnId","=","pkg.EvnId")
->leftJoin(DB::raw("(SELECT pd.PKDID, pd.BsNaId, cnt.ContentList, bn.nature FROM package_dets as pd, busi_natures as bn WHERE pd.BsNaId = bn.BsNaId
LEFT JOIN(SELECT PKID, PKDID, ContentList FROM package_detcontents GROUP BY PKDID)cnt
ON(cnt.PKDID = pd.PKDID)) as led"),
function($join){
$join->on("led.PKID","=","pkg.PKID");
})
->where("pkg.Status", "=", "Active")
->where("ev.enventNm", "=", $envent)
->paginate(50);
쿼리 구문에 문제가 있습니다.이것은 당신의 질문입니다.
SELECT pd.PKDID,
pd.BsNaId,
cnt.ContentList,
bn.nature
FROM package_dets AS pd
INNER JOIN busi_natures AS bn ON pd.BsNaId = bn.BsNaId
/*Above INNER JOIN can be any other JOIN as per your requirement*/
LEFT JOIN
(
SELECT PKID,
PKDID,
ContentList
FROM package_detcontents
GROUP BY PKID,PKDID,ContentList
) cnt
ON cnt.PKDID = pd.PKDID;
언급URL : https://stackoverflow.com/questions/57667538/syntax-error-or-access-violation-1064-syntax-error-on-left-join-condition
'programing' 카테고리의 다른 글
매개 변수를 사용하여 Powershell 스크립트에서 실행 파일 실행 (0) | 2023.08.14 |
---|---|
하위 쿼리 팩터링이 있는 Oracle DELETE 문 (0) | 2023.08.14 |
오라클에서 if(조건, 그렇다면, 그렇지 않으면) (0) | 2023.08.14 |
node.js에 있는 문자열의 sha1 해시를 어떻게 얻을 수 있습니까? (0) | 2023.08.14 |
GATER_PLAN_STATISTICS가 기본 계획 통계를 생성하지 않습니다. (0) | 2023.08.14 |