2017-05-10 4 views
0

나는 mysql 쿼리에 익숙하지 않고 쿼리를 가져 오는 중이다. 기본적으로, 아래 그림과 같이 연도와 월 (Jan'17, Feb'17 ...)을 가로 방향 (열)으로 그룹화 할 날짜가 필요합니다. 쿼리를 만드는 데 도와주세요그룹화 연도 및 월별로 MySQL 쿼리 쿼리

Data image

: Count

데이터는 아래 이미지에 표시됩니다.

+0

응용 프로그램 코드의 데이터 표시 문제를 심각하게 고려하십시오. – Strawberry

답변

0

조건부 집계를 수행 할 수 있습니다. 한 번 login_id를 수행 한 다음 전체 결과를 결합한 다음 두 결과를 결합합니다.

Select login_idindex, 
    Sum(date_format(visitdate, '%Y%m') = '201701') as jan_17, 
    Sum(date_format(visitdate, '%Y%m') = '201702') as feb_17, 
    . . ., 
    Count(*) as total 
From your_table 
Where visitdate between ? and ? 
Group by login_idindex 

Union all 

Select null, 
    Sum(date_format(visitdate, '%Y%m') = '201701') as jan_17, 
    Sum(date_format(visitdate, '%Y%m') = '201702') as feb_17, 
    . . ., 
    Count(*) as total 
From your_table 
Where visitdate between ? and ?; 

실제 날짜와 ?를 교체하거나 모든 날짜와 함께 작업하는 경우 where 절을 제거합니다.

+0

고마워요. 내 시간을 구 했잖아. – Debaranjan