반응형 with3 [Error] with is not valid at this position for this server version Mysql 에서 WITH 절을 사용하다가 아래와 같은 에러가 발생하였다.(with 절 관련해서는 아래 참고 포스팅 참고) with is not valid at this position for this server version 필자는 피시에 mysql 5.7.44 버전이 설치 되어있지만 WITH 절은 8.0 부터 사용이 가능하여사용할 수 없는 구문이라는 에러이다. 해결책 1. 버전을 8.0 이상으로 올린다.2. WITH 절을 서브쿼리로 푼다. 그밖에도 코딩을 하고 있다면 코드 상에서 풀거나 할 방법은 다양하다.참고 포스팅https://thenicesj.tistory.com/1104 [Mysql] WITH 절 구문Mysql 에서 사용 가능한 WITH 절은 서브쿼리/가상테이블 을 미리 생성해두고, 언제든지 .. 2024. 11. 5. [Mysql] 계층형 쿼리 사용법 (WITH RECURSIVE) 이전 포스팅에서1. Oracle 에서 계층형 쿼리 사용법2. Mysql 의 WITH 절에 대해서 다룬 포스팅이 있다.자세한 내용은 아래 참고 포스팅 참고 바란다. 이번 포스팅에서는 Mysql 에서 계층형 쿼리를 사용하는 방법이다. 바로 본론으로 들어가 예시 코드와 데이터를 먼저 확인해보면 아래와 같다. 데이터idparent_id1null213142526373위 데이터를 그림으로 나타내면 아래와 같다. └── 1 └── 2 │ └── 4 │ └── 5 └── 3 └── 6 └── 7그럼 이제 이 데이터로 계층형 .. 2024. 11. 3. [Mysql] WITH 절 구문 Mysql 에서 사용 가능한 WITH 절은 서브쿼리/가상테이블 을 미리 생성해두고, 언제든지 재사용이 가능한 공통 테이블 표현식(CTE, Common Table Expression) 을 정의하는 방법이다. 가독성도 높이고 재사용성도 높이기에 WITH 절은 많이 사용이 된다. 우선 아래와 같은 쿼리가 있다고 가정하면SELECT SUM(MONEY)FROM ( SELECT ID, MONEY FROM TABLE_NAME WHERE ID > 10 ) AS A ; 위 쿼리를 WITH 절을 사용하면 아래와 같이 변경이 가능하다. WITH SUB_TABLE AS( .. 2024. 11. 2. 이전 1 다음 반응형