GROUP BY Null 처리
GROUP BY를 활용하여 데이터를 집계하는 경우 NULL 값을 처리하는 방법을 고려하는 것이 중요합니다. 기본적으로 NULL 값은 함께 그룹화되어 누락된 값이 있는 행을 제외할 수 있습니다.
이 시나리오에서는 조상 필드를 기준으로 행을 그룹화하고 조상이 NULL인 행을 포함하려고 합니다. 이를 달성하려면 해결 방법을 활용할 수 있습니다.
SELECT `table1`.*, IFNULL(ancestor, UUID()) AS `unq_ancestor`, GROUP_CONCAT(id SEPARATOR ',') AS `children_ids` FROM `table1` WHERE (enabled = 1) GROUP BY `unq_ancestor`;
UUID() 함수는 NULL 조상 값이 있는 각 행에 대해 고유 식별자를 생성합니다. 이렇게 하면 NULL 조상이 있는 행에 고유 식별자가 할당되어 함께 그룹화되는 것을 방지할 수 있습니다.
GROUP BY 절에서 조상 필드를 unq_ancestor로 바꾸면 쿼리는 이제 고유 식별자를 기준으로 행을 그룹화합니다. NULL 값의 경우 모든 행이 결과 세트에 포함됩니다.
위 내용은 모든 행을 포함하기 위해 GROUP BY 절의 NULL 값을 처리하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!