테이블에서 셀프 조인을 수행하여 값을 열 단위로 표시하고 싶습니다. 각 객체에는 여러 속성(알려진 한도까지)이 있지만 모든 객체의 모든 속성이 저장되는 것은 아닙니다. 다양한 조인을 시도했지만 항상 행이 누락되어 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粉5634465792024-04-01 09:26:44
이를 달성하려면 다음 쿼리를 사용할 수 있습니다.
으아아아설명:
특정 값(예: "a", "b" 등)에는 CASE
语句,我们选择 Attribute
값을 사용하세요. 따라서 해당 특정 열의 경우 해당 특정 속성의 값만 선택됩니다.
SUM
我们聚合 Value
字段的值。这样,任何 ObjectID
를 사용하는 여러 행 값은 하나의 행으로 집계됩니다.
다음과 같이 SUM
因为您可能有非数字值,您可以按照 @xQbert 的建议使用 MAX
사용하고 싶지 않은 경우: