집 >데이터 베이스 >MySQL 튜토리얼 >MySQL에서 정렬된 SELECT 결과에 행 번호를 추가하는 방법은 무엇입니까?
MySQL: 정렬된 SELECT 결과에서 행 번호 검색
질문:
MySQL의 SELECT 문에서 정렬된 항목의 행 번호를 어떻게 얻나요?
배경:
'orderID' 및 'itemID' 열이 포함된 'orders'라는 테이블을 생각해 보세요. 아래 쿼리는 'itemID'를 기준으로 주문 수량을 계산합니다.
<code class="language-sql">SELECT itemID, COUNT(*) as ordercount FROM orders GROUP BY itemID ORDER BY ordercount DESC;</code>
이 쿼리는 항목 수를 반환하지만 행 번호는 반환하지 않습니다.
해결책:
줄 번호를 검색하려면 다음 기술을 사용하세요.
<code class="language-sql">SET @rank=0;</code>
<code class="language-sql">SELECT @rank:=@rank+1 AS rank, itemID, COUNT(*) as ordercount FROM orders GROUP BY itemID ORDER BY ordercount DESC;</code>
<code class="language-sql">SELECT @rank;</code>
예:
다음 쿼리는 행 번호와 항목 수를 반환합니다.
<code class="language-sql">SET @rank=0; SELECT @rank:=@rank+1 AS rank, itemID, COUNT(*) as ordercount FROM orders GROUP BY itemID ORDER BY ordercount DESC; SELECT @rank;</code>
출력:
<code>1 | 388 | 3 2 | 234 | 2 3 | 693 | 1 4 | 3432 | 1 5 | 3459 | 1</code>
최종 행 개수는 5입니다.
위 내용은 MySQL에서 정렬된 SELECT 결과에 행 번호를 추가하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!