0
조인 된 테이블에서 계산 : 학습자는, 공급자가 각 공급자에 을 많은 학습자 많은 업체를 가지고있다그룹은 다음과 같은 형식 내가 학습자 당 행을 얻기 위해 노력하고
nsn|last_name|first_name|middle_name|gender|ethnicities|providers|qualifications|vocation_PI|vocation_SI|.....
, 학습자는 많은있다 결과는, 결과는 한 학습자 에 속하는 결과가 하나 개의 표준이 표준이 없음/많은 결과에 속해 표준이가 많은 직업
select l.nsn, l.last_name,l.first_name,l.middle_name, l.gender, GROUP_CONCAT(distinct e.name SEPARATOR '|') as ethnicities, GROUP_CONCAT(distinct p.name SEPARATOR '|') as providers, count(case v.code when 'PI' then 1 else 0 end) as v_PI,count(case v.code when 'SI' then 1 else 0 end) as v_SI,count(case v.code when 'CR' then 1 else 0 end) as v_CR, GROUP_CONCAT(distinct q.name SEPARATOR '|') as qualifications
from learners l
join learner_ethnicity le on l.id = le.learner_id
join ethnicities e on le.ethnicity_id = e.id
join learner_provider lp on l.id = lp.learner_id
join providers p on lp.provider_id = p.id
join results r on lp.id = r.learner_provider_id
join standards s on r.standard_id = s.id
join standard_vocation sv on s.id = sv.standard_id
join vocations v on sv.vocation_id = v.id
join learner_qualification lq on l.id = lq.learner_id
join qualifications q on lq.qualification_id = q.id
group by l.id
나는 각 직업이 작동 할 수를 얻을 질수; 나는 각 카운트 필드에 같은 값을 얻을 수 (모든 카운트 또는 어떤 총이 있는지 확실하지 않습니다)
예상 출력 :
123451234 | Doe | John | James | M | European|Maori | SecondaryProvider|TertiaryProvider | NCEA Level 1|NCEA Level 2|Farming PHD | 185 | 430 | .....
실제 출력 :
123451234 | Doe | John | James | M | European|Maori | SecondaryProvider|TertiaryProvider | NCEA Level 1|NCEA Level 2|Farming PHD | 500 | 500 | .....
어떤 제안이?
수 (사례 v.code 다음 'PI'1 개 다른 공 끝) 당신이 확인하는 경우는 1 또는 0 값을 줄 것을 원하는 것을 얻을 것 교체하여 그것을 카운트하는 것은 총 카운트와 같습니다. –
너무 쉬워요! 고마워요. – Wing5wong