PHP : requete SQL
Résolu/Fermé
dimitri93
Messages postés
5
Date d'inscription
lundi 3 septembre 2007
Statut
Membre
Dernière intervention
4 septembre 2007
-
3 sept. 2007 à 12:32
Jacques - 11 sept. 2007 à 13:56
Jacques - 11 sept. 2007 à 13:56
A voir également:
- PHP : requete SQL
- Easy php - Télécharger - Divers Web & Internet
- \R php ✓ - Forum PHP
- Php if plusieurs conditions ✓ - Forum PHP
- Br php ✓ - Forum PHP
- Echo image php ✓ - Forum PHP
10 réponses
dimitri93
Messages postés
5
Date d'inscription
lundi 3 septembre 2007
Statut
Membre
Dernière intervention
4 septembre 2007
3 sept. 2007 à 13:32
3 sept. 2007 à 13:32
OK, j'ai créé une table qui contient le champ département.
A chaque création de message, le département de l'internaute ajoute une entrée dans ce champ.
Est-il possible recupérer via une requete SQL le nombre d'entrée de chaque département afin de pouvoir établir un classement.
Peut etre va-t-il falloir que je créé paralellement une autre table avec un champs pour chaque departement. Jvois pas d'autres solutions...
En tout cas, merci pour tout.
A chaque création de message, le département de l'internaute ajoute une entrée dans ce champ.
Est-il possible recupérer via une requete SQL le nombre d'entrée de chaque département afin de pouvoir établir un classement.
Peut etre va-t-il falloir que je créé paralellement une autre table avec un champs pour chaque departement. Jvois pas d'autres solutions...
En tout cas, merci pour tout.
Bonjour,
Classiquement la fréquentation par ordre dégressif peut se mesurer comme suit :
SELECT <Table>.<champ département>, Count(<Table>.<champ département>, ) AS Nbre
FROM <Table>
GROUP BY <Table>.<champ département>,
ORDER BY Count(<Table>.<champ département>) DESC;
Cordialement
Nb : Requête non testée
La science ne fait que trouver ce qui existe depuis toujours.
REEVES Hubert.
Classiquement la fréquentation par ordre dégressif peut se mesurer comme suit :
SELECT <Table>.<champ département>, Count(<Table>.<champ département>, ) AS Nbre
FROM <Table>
GROUP BY <Table>.<champ département>,
ORDER BY Count(<Table>.<champ département>) DESC;
Cordialement
Nb : Requête non testée
La science ne fait que trouver ce qui existe depuis toujours.
REEVES Hubert.
j'ai une seule machine mais je veux utiliser sql serveur2000. quand je crée les tables en allant vers l'access à partir de la création ça me complique alrs que faire?
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
dimitri93
Messages postés
5
Date d'inscription
lundi 3 septembre 2007
Statut
Membre
Dernière intervention
4 septembre 2007
3 sept. 2007 à 22:11
3 sept. 2007 à 22:11
Salut jacques, merci de t'interesser à mon problème.
En fait si tu pouvais me donner la syntaxe complete (genre avec mysql_query(...) etc) avec un ptit tableau pour afficher le resultat ce serai encore mieux.
La table s'appele "messages" et le champ "dep".
Désolé d'insister autant mais je suis un débutant en la matière alors je rame un peu.
Merci d'avance.
En fait si tu pouvais me donner la syntaxe complete (genre avec mysql_query(...) etc) avec un ptit tableau pour afficher le resultat ce serai encore mieux.
La table s'appele "messages" et le champ "dep".
Désolé d'insister autant mais je suis un débutant en la matière alors je rame un peu.
Merci d'avance.
dimitri93
Messages postés
5
Date d'inscription
lundi 3 septembre 2007
Statut
Membre
Dernière intervention
4 septembre 2007
3 sept. 2007 à 23:18
3 sept. 2007 à 23:18
En fait jcroi avoir capter le truc mai j'arrive pas à afficher le résultat.
ca doit etre un truc comme ca :
$search = mysql_query('SELECT messages.dep COUNT(messages.dep) AS nombre FROM messages GROUP BY messages.dep ORDER BY COUNT(messages.dep) DESC');
$row = mysql_fetch_array($search);
Comment afficher le résultat de cette requette???
PLEASE HEEEEEEELP.
ca doit etre un truc comme ca :
$search = mysql_query('SELECT messages.dep COUNT(messages.dep) AS nombre FROM messages GROUP BY messages.dep ORDER BY COUNT(messages.dep) DESC');
$row = mysql_fetch_array($search);
Comment afficher le résultat de cette requette???
PLEASE HEEEEEEELP.
dimitri93
Messages postés
5
Date d'inscription
lundi 3 septembre 2007
Statut
Membre
Dernière intervention
4 septembre 2007
4 sept. 2007 à 00:34
4 sept. 2007 à 00:34
C bon g réussi...
Merci jacques il manquait juste le "DISTINCT" apres le "SELECT".
Bonne nuit a tous!!!
Merci jacques il manquait juste le "DISTINCT" apres le "SELECT".
Bonne nuit a tous!!!
Bonjour Dimitri93,
Ce matin, je découvre tes précédents messages successifs.
Superbe, je n'ai plus rien à faire ! Tu poses les questions et trouves les réponses !
Excellents débuts
Bienvenue dans le monde SQL
La science ne fait que trouver ce qui existe depuis toujours.
REEVES Hubert.
Ce matin, je découvre tes précédents messages successifs.
Superbe, je n'ai plus rien à faire ! Tu poses les questions et trouves les réponses !
Excellents débuts
Bienvenue dans le monde SQL
La science ne fait que trouver ce qui existe depuis toujours.
REEVES Hubert.
Bonjour le forum,
j'ai une BDD qui contient parmis les champs un nommé "cp" (Code postal)
Je souhaiterai affiché la somme des lignes dans ma bdd par Code postal et ordonner les résultat soit en decroissant soit en croissant.
Mon début de code est :
Code :
for ($i=1; $i<=96; $i++)
{
$dept = mysql_query("SELECT COUNT(*) FROM demandes where cp ='$i'");
$rdept = mysql_fetch_row($dept);
$tdept = $rdept[0] + 0;
echo "$i ($tdept)<br>";
}et paradoxalement c'est le tri qui devrait etre le plus facile a coder et pourtant ca ne fonctionne pas avec un order car un order ne me trirait pas en fonction du resultat COUNT mais en fonction de la variable champ.
Enfin pareil avec la limit d'affichage que je souhaiterai a 50 puis le second tableau a 50, 50, mais comment faire puisque le tri doit se faire en fonction du resultat...
PS : j''ai essayé avec :
$dept = mysql_query("SELECT cp, COUNT(*) as NbParCp FROM demandes GROUP BY cp ORDER BY cp ASC");
mais le while ne me retourne aucn resultat.
Merci a tous pour votre patience.
j'ai une BDD qui contient parmis les champs un nommé "cp" (Code postal)
Je souhaiterai affiché la somme des lignes dans ma bdd par Code postal et ordonner les résultat soit en decroissant soit en croissant.
Mon début de code est :
Code :
for ($i=1; $i<=96; $i++)
{
$dept = mysql_query("SELECT COUNT(*) FROM demandes where cp ='$i'");
$rdept = mysql_fetch_row($dept);
$tdept = $rdept[0] + 0;
echo "$i ($tdept)<br>";
}et paradoxalement c'est le tri qui devrait etre le plus facile a coder et pourtant ca ne fonctionne pas avec un order car un order ne me trirait pas en fonction du resultat COUNT mais en fonction de la variable champ.
Enfin pareil avec la limit d'affichage que je souhaiterai a 50 puis le second tableau a 50, 50, mais comment faire puisque le tri doit se faire en fonction du resultat...
PS : j''ai essayé avec :
$dept = mysql_query("SELECT cp, COUNT(*) as NbParCp FROM demandes GROUP BY cp ORDER BY cp ASC");
mais le while ne me retourne aucn resultat.
Merci a tous pour votre patience.