각 필드가있는 피벗 테이블이 있습니다.그룹 단락으로 피벗 테이블 (MySQL)의 총 열 값을 서브하는 방법
- 지구
- 블록
- MaleCount
- FemaleCount
상기 열 이름이다. 그래서 기본적으로 지구와 블록 단위로 정리 한 모든 자료를 정리했습니다. 이를 위해 MySQL에 다음 쿼리를 작성했습니다. 다음과 같은 결과
district | block | FemalCount | MaleCount
xyz | abc | 4 | 5
| cvz | 5 | 9
ytz | tyz | 7 | 3
| awe |3 |8
중요한 것은이 있습니다
select
ds.ds_name as district,
bs.bl_name as block,
case
when sd.gender_id = 1 then count(gender_id)
else 0
end as MaleCount,
case
when sd.gender_id = then count(gender_id)
else 0
end as FemalCount,
from studet data sd
inner join district ds on ds.district_id = sd.ds_id
inner join block bs on bs.block_id = sd.bs_id
group by bs.block_name, ds.district_name;
, 나는 결과 집합의 다음과 같은 종류를 원한다. 위에서 언급 같은 블록 지구에 의해 그룹 Malecount 및 FemaleCount하는 부분합 행을 포함
district | block | FemalCount | MaleCount
xyz | abc | 4 | 5
| cvz | 5 | 9
total | | 9 | 14
ytz | tyz | 7 | 3
| awe | 3 | 8
total | | 10 | 11
. MySQL 쿼리에서 어떻게 이것을 얻을 수 있습니까?
null, cvz 및 null, 경외구 이후에 소계를 산출하는 논리는 무엇입니까? –
지구의 현명한 여성과 남성 수 소계. –
쿼리에 잘못 표시되는 몇 가지 사항이 있습니다. ds.ds_name을 지구로 선택하고 ds.district_name (블록과 유사)으로 그룹화하면 sd.gender_id =에 여성 수에 대한 조건이 누락되면 원하는대로 말할 수 있습니다. 지역별로 그룹화하고 차단하지만 코드는 블록 및 구획별로 그룹화됩니다. 여성 수 이후 및 from 문의 전에 쉼표가 있고 studet 데이터 sd에서 오는 것은 무엇입니까? 코드를 정리하고 샘플 데이터를 제공 하시겠습니까? –