>  Q&A  >  본문

MySQL 셀프 조인 누락 데이터

테이블에서 셀프 조인을 수행하여 값을 열 단위로 표시하고 싶습니다. 각 객체에는 여러 속성(알려진 한도까지)이 있지만 모든 객체의 모든 속성이 저장되는 것은 아닙니다. 다양한 조인을 시도했지만 항상 행이 누락되어 Null 값을 원합니다.

시작 테이블:

객체 ID 속성 가치
1 하나 10
1 b 20
1 c 30
2 하나 15
2 c 25

내 목표(가능한 세 가지 속성이 a,b,c임을 안다고 가정)는

입니다.
객체 ID 하나 b c
1 10 20 30
2 15 25

P粉464208937P粉464208937183일 전276

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

  • P粉563446579

    P粉5634465792024-04-01 09:26:44

    이를 달성하려면 다음 쿼리를 사용할 수 있습니다.

    으아아아

    설명:

    특정 값(예: "a", "b" 등)에는 CASE 语句,我们选择 Attribute 값을 사용하세요. 따라서 해당 특정 열의 경우 해당 특정 속성의 값만 선택됩니다.

    SUM 我们聚合 Value 字段的值。这样,任何 ObjectID를 사용하는 여러 행 값은 하나의 행으로 집계됩니다.

    다음과 같이 SUM 因为您可能有非数字值,您可以按照 @xQbert 的建议使用 MAX 사용하고 싶지 않은 경우:

    으아아아

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