찾다

 >  Q&A  >  본문

MySql 5.5.34에서 각 요일의 처음 두 항목을 얻는 방법

<p><strong>TENANT_NAME</strong>, <strong>MAX_CALLS</strong> 및 <strong>TIME_STAMP</strong>기본 키가 없는 MySQL 테이블이 있습니다. /strong> 요청 시 매시간 데이터를 삽입하며 동일한 이름이 반복될 수 있습니다. </p> <p>이제 추가해야 할 그룹 이름과 합계 호출을 얻고 각 요일에 대한 상위 2개 항목을 얻고 싶습니다. </p> <p>예: 22:49 데이터 삽입</p> <pre class="brush:php;toolbar:false;">TENANT_NAME,MAX_CALLS,TIME_STAMP RS1, 20, 2022-12-07 22:49:17 RS2, 10, 2022-12-07 22:49:17 RS3, 2, 2022-12-07 22:49:17</pre> <p>다음 시간 23시 49분</p> <pre class="brush:php;toolbar:false;">RS1, 15, 2022-12-07 23:49:17 RS2, 0, 2022-12-07 23:49:17 RS3, 20, 2022-12-07 23:49:17</pre> <p>이렇게 하면 1년간의 데이터가 생깁니다</p> <p>이제 일주일 동안의 레코드 2개의 이름 그룹을 매일 정리하고 싶습니다</p> <p>이렇게</p> <pre class="brush:php;toolbar:false;">RS1, 35, 월 RS3, 22, MON... 등등 RS4, 40, 일 RS2, 35, SUN</pre> <p>이 쿼리를 시도한 결과 이름과 총 통화 수별로 그룹화하고 DAYNAME을 표시할 수 있었지만 각 요일에 대한 상위 2개 기록을 원합니다. </p> <pre class="brush:php;toolbar:false;">a.TENANT_NAME,day(a.TIME_STAMP)별로 TENANT_LIC_DISTRIBUTION에서 a.TENANT_NAME,SUM(a.MAX_CALLS),DAYNAME(a.TIME_STAMP)을 그룹으로 선택합니다. ) a.MAX_CALLS,a.TIME_STAMP로 주문; RS1, 35, 월 RS3, 22, 월 RS2, 10, 월 RS3, 30, 화요일 RS2, 20, 화요일 RS1, 10, TUE.... 등등 RS1, 20, 일 RS2, 10, 일 RS3, 1, SUN</pre> <p>이렇게 받고 싶어요</p> <pre class="brush:php;toolbar:false;">RS1, 35, 월 RS3, 22, 월 RS3, 30, 화요일 RS2, 20, TUE....그래서 RS1, 20, 일 RS2, 10, SUN</pre> <p>도와주세요</p> <p>감사합니다</p>
P粉676588738P粉676588738439일 전518

모든 응답(1)나는 대답할 것이다

  • P粉466643318

    P粉4666433182023-09-04 12:55:52

    집계 쿼리 주변에 창 함수를 사용하여 행 번호를 추가한 다음 행 번호로 제한해 보세요. 이것은 한 가지 방법입니다.

    으아악

    회신하다
    0
  • 취소회신하다