Requête SQL pour connexion entre 3 tables liées..
9 messages
• Page 1 sur 1
Consultez la formation au REFERENCEMENT naturel Google de WebRankInfo / Ranking Metrics
- Eric Holo
- Nouveau WRInaute

- Messages: 5
- Inscription: 21 Mai 2005
Requête SQL pour connexion entre 3 tables liées..
Salut,
Voici le topo :
J'ai une table "t_doc", une table "t_info", et une "t_info_doc" qui lie les id des deux premières..
Mon but est d'avoir la liste des documents qui ne sont pas déjà liés à une ou plusieurs infos..
Ma démarche serait de faire la liste des id_doc, celle des id_info_doc, soustraire les deux pour obtenir les id_doc non connectés à des id_doc..
Pouvez-vous m'aider ??
Voici le topo :
J'ai une table "t_doc", une table "t_info", et une "t_info_doc" qui lie les id des deux premières..
Mon but est d'avoir la liste des documents qui ne sont pas déjà liés à une ou plusieurs infos..
Ma démarche serait de faire la liste des id_doc, celle des id_info_doc, soustraire les deux pour obtenir les id_doc non connectés à des id_doc..
Pouvez-vous m'aider ??
- /* jerome */
- Nouveau WRInaute

- Messages: 18
- Inscription: 23 Aoû 2005
Quelque chose de ce genre devrait fonctionner :
- Code: Tout sélectionner
SELECT t_doc. *
FROM t_doc
LEFT JOIN t_info_doc ON t_doc.id = t_info_doc.doc_id
WHERE t_info_doc.id IS NULL
- Eric Holo
- Nouveau WRInaute

- Messages: 5
- Inscription: 21 Mai 2005
Ca marche parfaitement bien..
Merci Jerome..
Voici mon site : http://www.kterre.org
Cette page me permettra de gérer tout type de documents annexes sur les infos de la chronologie..
Merci Jerome..
Voici mon site : http://www.kterre.org
Cette page me permettra de gérer tout type de documents annexes sur les infos de la chronologie..
- Eric Holo
- Nouveau WRInaute

- Messages: 5
- Inscription: 21 Mai 2005
Je souhaite maintenant créer une page de statistiques des pays les plus liés à des infos, il me semble que le principe doit être approximativement le même, excepté le fait que la requête induit un ordre de classement relatif à une autre requète, c'est là où je cale..
Toujours les tables t_info, t_pays, t_info_pays, et voici la requête de départ:
Toujours les tables t_info, t_pays, t_info_pays, et voici la requête de départ:
- Code: Tout sélectionner
SELECT t_pays.*
FROM t_pays LEFT JOIN t_info_pays
ON t_pays.id_pays = t_info_pays.id_pays
- /* jerome */
- Nouveau WRInaute

- Messages: 18
- Inscription: 23 Aoû 2005
documente toi sur les clauses "GROUP BY" et "COUNT" de sql 
- Eric Holo
- Nouveau WRInaute

- Messages: 5
- Inscription: 21 Mai 2005
Voilà ce que j'ai compris (pas assez faut croire..) et essayé mais bon !!
J'insère dans le SELECT un:
et à la fin:
C'est le "quelque chose" qui me fait tourner en rond, je ne vois pas comment y insérer la jointure entre 2 tables !!
Le nbr représente donc ce nombre de fois où chaque pays est lié à une info via t_info_pays..
Peux-tu m'orienter encore ??
J'insère dans le SELECT un:
- Code: Tout sélectionner
COUNT( "quelque chose" ) AS nbr
et à la fin:
- Code: Tout sélectionner
ORDER BY nbr
C'est le "quelque chose" qui me fait tourner en rond, je ne vois pas comment y insérer la jointure entre 2 tables !!
Le nbr représente donc ce nombre de fois où chaque pays est lié à une info via t_info_pays..
Peux-tu m'orienter encore ??
- /* jerome */
- Nouveau WRInaute

- Messages: 18
- Inscription: 23 Aoû 2005
Tu fais ta jointure normalement (avec un =) ce qui va te donner la liste de tous les couples pays<->infos :
pays1<->info1
pays2<->info2
pays1<->info3
pays3<->info4
...
Ensuite tu utilises la group by pour regrouper tous les couples de chaque pays entre eux, et avec le count tu auras le nombre de couple pour chaque pays donc le nombre d'infos :
pays1<->2
pays2<->1
pays3<->1
C'est de la logique tout simplement, le mieux c'est que tu cherches par toi meme comment mettre ca en oeuvre concretement (la requete), c'est comme ca qu'on apprend
pays1<->info1
pays2<->info2
pays1<->info3
pays3<->info4
...
Ensuite tu utilises la group by pour regrouper tous les couples de chaque pays entre eux, et avec le count tu auras le nombre de couple pour chaque pays donc le nombre d'infos :
pays1<->2
pays2<->1
pays3<->1
C'est de la logique tout simplement, le mieux c'est que tu cherches par toi meme comment mettre ca en oeuvre concretement (la requete), c'est comme ca qu'on apprend
9 messages
• Page 1 sur 1
Formation recommandée sur ce thème :
Formation REFERENCEMENT naturel Google : apprenez une méthode efficace pour optimiser à fond le référencement naturel dans Google de façon durable... Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.
Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.
Lectures recommandées sur ce thème :
- [MySQL] Requête SELECT entre 3 tables liées
- Requete SQL sur 2 tables
- [Résolu] PB requete SQL 3 tables + 2 count
- SQL Requête dans plusieurs tables
- Problème de jointure entre deux tables requête SQL
- Problème avec requête SQL multiple (3 tables) et comptage
- Requete de classement SQL sur trois tables avec SUM, COUNT..
- Tables MySQL liées
- gestion tables sql
- Requete 2 tables
- AdSense Tracking : statistiques détaillées sur les clics AdSense - 29-02-2004
- Google API : guide de développement de l'API Google - 20-09-2002
- Honda va inclure Google Earth dans son système de navigation par satellite - 07-04-2006
- Nombre moyen de mots par requête : statistiques AOL Août 2006 - 10-08-2006
- Nombre de clics dans les pages de résultats : statistiques AOL Août 2006 - 11-08-2006
- Barre d'outils Google pour Firefox : version 3 - 13-12-2006
- Informations sur l'infrastructure technique de Google - 01-11-2004
- Vidéos YouTube 4096 x 3072 pixels (4K) - 12-07-2010
Consultez la description détaillée des produits ou services de Google suivants : Google AdWords API
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités

