Q&A

안녕하세요.

XML Query에서 Row number를 사용할 수 있을까요? 

 

SELECT sub.document_srl, sub.position, sub.average_rating
FROM (
SELECT rat.document_srl, rat.average_rating, @rownum := @rownum + 1 AS position
FROM xe_rating rat
JOIN (SELECT @rownum := 0) AS row
ORDER BY average_rating desc, rated_count desc
) AS sub
WHERE sub.document_srl = 26333

 

위와 같이 해야하는데요, 

2가지 ORDER BY로 정렬된 Query에서 특정 document_srl을 가진 Row의 Row number를 가져와야 합니다.

@rownum 부분이 임의의 변수를 선언하는 부분인데 XML Query에서는 이게 안되는 것 같은데 맞을까요?

 

만약 임의의 변수 선언이 안된다면 XML Query내에서 Row의 number를 반환받는 방법이 있을까요?

Raw query 써야 하나요...ㅠ.ㅠ
 

댓글 1

  • XML Query에는 아주 기본적인 기능들만 구현이 되어 있어서 변수를 다루는 건 안되요.

    이걸 꼭 MySQL에서 처리해야겠다면, Raw Query를 이용해서 구현해야겠지요.