Je tiré par les cheveux des données du même nom de la table, mais avec des conditions différentes et j'ai demandé 3 fois et le résultat est:Comment faire pour additionner des données de la même table avec des conditions différentes?
101=>1
301=>1
501=>2
502=>4
---------------
101=>2
501=>1
---------------
101=>1
501=>1
dont la première colonne est des salles de classe et la deuxième colonne sont les valeurs. Quelle est la meilleure façon de résumer ces valeurs avec la même classe pour le résultat serait:
101 = 4
301 = 1
501 = 4
502 = 4
Ma commande de requête:
$query = $db->prepare("SELECT COUNT(std_id) AS total, std_class FROM attendance WHERE att_mode IN('mode-01','mode-04') AND att_attend='0' AND att_date=CURDATE() GROUP BY std_class ORDER BY std_class");
$query->execute();
while ($char = $query->fetch(PDO::FETCH_OBJ)) {
$labels2[] = $char->std_class.'-'.$char->total;
$link[] = $char->std_class;
}
$query = $db->prepare("SELECT COUNT(std_id) AS total_sick,std_class FROM attendance WHERE att_mode ='mode-01' AND att_attend='2' AND att_date=CURDATE() GROUP BY std_class ORDER BY std_class");
$query->execute();
while($char = $query->fetch(PDO::FETCH_OBJ)){
$sickCount[] = $char->std_class.'-'.$char->total_sick;
}
$query = $db->prepare("SELECT COUNT(std_id) AS total_leave,std_class FROM attendance WHERE att_mode ='mode-01' AND att_attend='3' AND att_date=CURDATE() GROUP BY std_class ORDER BY std_class");
$query->execute();
while($char = $query->fetch(PDO::FETCH_OBJ)){
$leaveCount[] = $char->std_class.'-'.$char->total_leave;
}
J'ai reçu cette erreur: SQLSTATE [21000]: Violation de la cardinalité: 1242 La sous-requête renvoie plus d'une ligne – Wasinha