IT/mysql

[myslq] 서브쿼리를 별칭(subquery_alias)으로 정의

generator 2024. 7. 18. 16:48

쿼리를 실행하는데 이런 에러가 발생했다.

check the manual that corresponds to your MariaDB server version for the right syntax to use near '' at line  11

11라인에 문제가 있다는 건데 뭐가 문제인가 한참을 고민했다.

SELECT *
FROM (
    SELECT *
    FROM COIN_MAP
    WHERE 1=1
      AND amt < 805
      AND code = 'XRP'
      AND use_yn = 'Y'
    ORDER BY amt DESC
    LIMIT 5
)

문제는 mysql에서는 서버쿼리에 alis를 달아 주어야 한다.

아래처럼 수정을 해주면 정상적으로 실행이 된다.

SELECT *
FROM (
    SELECT *
    FROM COIN_MAP
    WHERE 1=1
      AND amt < 805
      AND code = 'XRP'
      AND use_yn = 'Y'
    ORDER BY amt DESC
    LIMIT 5
) AS subquery_alias;