찾다

 >  Q&A  >  본문

SQL - ORDER BY 정렬이 잘못되었습니다.

궁금한 점이 있는데 잘 작동됩니다. 마지막 단계에서는 "항목 목록" 열의 항목 수를 기준으로 전체 테이블 DESC를 정렬하고 싶지만 작동하지 않습니다.

으아악

벌써 추워진 게 확실하지만, 아직 뭔가 부족한 것 같아요.

item_id는 table2에 int(11)로 저장된 다음 외래 키로 table3에 전달됩니다.

다음은 COUNT를 통해 얻은 결과입니다.

내가 얻은 길이는 다음과 같습니다.

감사합니다!

P粉301523298P粉301523298464일 전566

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

  • P粉356128676

    P粉3561286762023-09-07 14:33:59

    길이별 항목 목록 결과를 원할 경우 결과는 다음과 같습니다

    내 목록 항목 목록 비어있음 6,7,8,9,10,12,13,14,15,16,17,20,371 비어 있음 20,21,22,23,24,25 비어 있음 6,7,8,9,10 비어있음 131 비어있음 131 1,4,5 비어 있음

    다음 쿼리를 사용해 보세요

    으아악

    회신하다
    0
  • P粉668804228

    P粉6688042282023-09-07 12:59:57

    해당 group_concat 相同的条件的 sum 来计算 Item List의 요소 수를 다음과 같이 사용할 수 있습니다.

    으아악

    이것은 결과 문자열의 길이를 비교하는 것보다 더 안전합니다. 예를 들어 두 개의 항목을 포함하는 '10000')的项目列表仍然比 '1 长, 2'와 같은 하나의 큰 숫자를 포함합니다.

    문자열 함수를 사용한다면 문자열에 쉼표가 몇 개나 나타나는지 셀 수 있습니다.

    으아악

    참고: 두 명의 사용자가 목록에 동일한 수의 항목을 가질 수 있으므로 다른 정렬 기준을 추가하여 잠재적 동점을 깨는 것이 좋습니다.

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