PHP Comment savoir le nombre de reponse MYSQL
spylller
Messages postés
441
Statut
Membre
-
spylller Messages postés 441 Statut Membre -
spylller Messages postés 441 Statut Membre -
Bonjour,
Je voudrais savoir comment compter le nombre de reponse il y a à une requete.
Par exemple que je fasse :
SELECT * FROM utilisateurs WHERE departement = :departement
Et qu'en retour j'ai 8 par exemple.
(j'avais pensé a une "for each" et incrementation à chaque fois mais c'est lourd)
Merci !
--
Have a nice day
Je voudrais savoir comment compter le nombre de reponse il y a à une requete.
Par exemple que je fasse :
SELECT * FROM utilisateurs WHERE departement = :departement
Et qu'en retour j'ai 8 par exemple.
(j'avais pensé a une "for each" et incrementation à chaque fois mais c'est lourd)
Merci !
--
Have a nice day
A voir également:
- PHP Comment savoir le nombre de reponse MYSQL
- Réponse automatique thunderbird - Guide
- Réponse automatique gmail - Guide
- Nombre de jours entre deux dates excel - Guide
- Nombre facile - Télécharger - Outils professionnels
- Expert php - Télécharger - Langages
4 réponses
Bonjour,
Tu peux utiliser COUNT :
https://sql.sh/fonctions/agregation/count
Tu peux utiliser COUNT :
https://sql.sh/fonctions/agregation/count
SELECT COUNT (*) FROM utilisateurs WHERE departement = :departement
La solution proposée par Crapoulou fonctionne aussi. (après ça dépend si tu veux uniquement connaitre le nombre.. ou si tu veux aussi pouvoir afficher les lignes concernées)
les codes seraient :
Avec le nombre uniquement :
Deuxième possibilité ...avoir le nombre de résultats... + les résultats
les codes seraient :
Avec le nombre uniquement :
$sql = "SELECT COUNT(*) as NB
FROM comptes
WHERE id = :id ";
$datas = array(':id'=>$id) ;
try{
$req = $bdd->prepare($sql);
$req->execute($datas);
}catch(Exception $e){
echo "Erreur ! " . $e->getMessage();
}
// Première solution en utilisant un fetch
$row = $req->fetch();
$nb = $row['NB'];
// deuxième solution utilisant directement un fetchColumn
$nb = $req->fetchColumn()
Deuxième possibilité ...avoir le nombre de résultats... + les résultats
$sql = "SELECT *
FROM comptes
WHERE id = :id ";
$datas = array(':id'=>$id) ;
try{
$req = $bdd->prepare($sql);
$req->execute($datas);
}catch(Exception $e){
echo "Erreur ! " . $e->getMessage();
}
//on stocke les resultats dans un array
$resultats = $req->fetchAll();
// Nombre de résultats
$nb = count($resultats);
//affichage des résultats :
if(!empty($resultats)){
foreach($resultats as $R){
print_r($R);
}
}
Et je retrouve le nombre comme ca : ?
$req = $bdd->prepare('SELECT COUNT * FROM comptes WHERE id = :id');
$req->execute(array('id'=>$id));
$nombre = $req->fetch();
Je n'ai pas toutes les subtilités du PHP en tête :-)