그룹이 비어 있지 않은 한 m_group_name
열을 그룹화 (또는 적어도 고유하게 만들기)하려고합니다. 기존 그룹을 볼 수있는 반면 기본적으로 아직 그룹이없는 것을 확인한 다음 편집 할 수 있습니다.그룹화는 공백 일 경우 무시하지만
예 :
id | m_group_name
---------------------
1 | Red
2 | Blue
3 |
4 | Red
5 |
이상적으로 하나의 빨간색, 하나 파란색 및 2 개의 공백이 생깁니다.
나는 공백을 NULL로 만들고 UUID 값을주고 (비슷한 Stackoverflow에서 발견 된 비슷한 것을 적용한 후에) 시도했지만 모든 NULL을 같은 값으로 만드는 것처럼 보입니다.
SELECT *, IFNULL(m_group_name,UUID()) AS m_group FROM m GROUP BY m_group
이상적으로 오히려
편집 완벽하게 정직하게 NULL을 사용하지 않는 게 좋을 'm_group_name가'잘못 예제에서 '그룹'으로 표시된 것을 깨달았다 - 수정.
하나의 쿼리에서 고유 한 그룹 이름과 그룹을 아직 갖지 않은 모든 행이 가능합니까? – MrJ
감사! 그게 모든 빈 그룹을 가지고, 가능하면 다른 유일한 고유 그룹이 너무 필요해 :) – MrJ
그건 내 대답의 편집 섹션 아래에 코드가 될 것이다 :-) – cypher