J'ai deux tables. Ma requête devrait retourner ce qui suit:Renvoie 0 et non NULL lorsque l'enregistrement n'est pas trouvé à l'aide de la jointure externe gauche
AUT | 0
mais cela ne retourne rien. J'ai essayé ce qui suit ci-dessous, mais rien ne fonctionne.
select substr(s.initial_group_code,1,3) as ko_tun, ifnull(count(s.id),0)
from study_entitlement s
left outer join graduation_status g on g.study_entitlement_id = s.id
where g.graduation_status_date between str_to_date('01.01.2017', '%d.%m.%Y')
and str_to_date('31.01.2017', '%d.%m.%Y')
and substr(s.initial_group_code,1,3) = 'AUT'
group by substr(s.initial_group_code,1,3);
select substr(s.initial_group_code,1,3) as ko_tun, count(s.id)+0
from study_entitlement s
left outer join graduation_status g on g.study_entitlement_id = s.id
where g.graduation_status_date between str_to_date('01.01.2017', '%d.%m.%Y')
and str_to_date('31.01.2017', '%d.%m.%Y')
and substr(s.initial_group_code,1,3) = 'AUT'
group by substr(s.initial_group_code,1,3);
select substr(s.initial_group_code,1,3) as ko_tun, COALESCE(count(s.id),0)
from study_entitlement s
left outer join graduation_status g on g.study_entitlement_id = s.id
where substr(s.initial_group_code,1,3) = 'AUT'
and g.graduation_status_date between str_to_date('01.01.2017', '%d.%m.%Y')
and str_to_date('31.01.2017', '%d.%m.%Y')
group by substr(s.initial_group_code,1,3);
S'il vous plaît formater votre code avec l'éditeur de sorte qu'il est plus facile de dire qui est qui. – kchason
Etes-vous certain que le groupe 'AUT' existe réellement dans votre ensemble de données? Vous devrez peut-être utiliser la table d'agenda ici. –
Je ne vois pas le problème ici, en ce que les deux colonnes que vous avez sélectionnées sont dans votre table de base et non dans la table jointe externe. Que voulez-vous dire que rien ne fonctionne? Je suppose que les trois requêtes sont toutes des tentatives différentes au même code? – kchason