피벗 테이블 쿼리에서 작업하고 있습니다.행 데이터를 열로 동적으로 변환하는 mysql 쿼리
스노, 이름을 다음과 같이 스키마는 지구
같은 이름이 난 4 세트를 보는 바와 같이 예 예
1 Mike CA
2 Mike CA
3 Proctor JB
4 Luke MN
5 Luke MN
6 Mike CA
7 Mike LP
8 Proctor MN
9 Proctor JB
10 Proctor MN
11 Luke MN
에 대한 샘플 데이터를 가지고 많은 지역에 나타날 수있다 (CA, JB, MN, LP). 지금은 지역
Name CA JB MN LP
Mike 3 0 0 1
Proctor 0 2 2 0
Luke 0 0 3 0
에 이름을 매핑하여 생성 피벗 테이블을 얻고 싶었다 나는 그러나 지구에서 증가 할 가능성이있는이
select name,sum(if(District="CA",1,0)) as "CA",sum(if(District="JB",1,0)) as "JB",sum(if(District="MN",1,0)) as "MN",sum(if(District="LP",1,0)) as "LP" from district_details group by name
에 대해 다음 쿼리를 썼다 그 경우 나는 수동으로 쿼리를 편집하고 그것에 새로운 지구를 추가해야 할 것이다.
위의 쿼리를 동적으로 구별 할 수있는 쿼리가 있는지 알고 싶습니다. 프로 시저로 스크립트를 생성 할 수 있다는 것을 알고 있습니다. 다른 방법도 있습니까? 쿼리의 출력이 "district_details에서 별개의 (지역)을 선택 "때문에
내가 그렇게 물어 내가 열 전치 수 같은 것입니다 각 행에 나에게 하나의 컬럼을 갖는 지역 이름을 반환합니다.
mysql의 GROUP_CONCAT() 함수를 살펴 보자. –