제 데이터베이스에는 몇 개의 상점이 있고 각 상점에는 몇 개의 쿠폰이 있으며 상점 당 최대 쿠폰 당 계급을 찾아야합니다. 나는 출력이 최대 합계 (couponscount)하지만 상점 이름 알파벳 순서에 따라 자사의 인쇄 순위에 따라 순위를 인쇄하지 않고, 다음과 같은 SQL 코드MySQL에있는 상점 목록의 순위 위치를 찾으십시오
set @rownum := 0;
SELECT @rownum := @rownum + 1 AS rank, sum(couponscount) as count, restaurant from coupons group by restaurant order by count desc
를 사용하지만하고있다.
어떻게 작동시킬 수 있습니까? 나는 첫 번째 SQL 쿼리뿐만 아니라 이것과 호환되어야 필요
는 또한 특정 레코드의 순위를 검색해야하고 나는 그래서
set @rownum := 0;
select rank from (SELECT @rownum := @rownum + 1 AS rank, sum(couponscount) as count, restaurant from coupons group by restaurant order by count desc) `storerank` where restaurant='some store name'
에 대해 다음 SQL 쿼리를 사용하고 있습니다.
감사합니다.
원한다면이 간단한 2 단계 과정 1. 아직 수행하지 않았다면 문제를보다 쉽게 복제 할 수 있도록 적절한 DDL (및/또는 sqlfiddle)을 제공하십시오. 2. 아직 수행하지 않았다면, 1 단계에서 제공된 정보와 일치하는 원하는 결과 세트를 제공하십시오. – Strawberry