Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1633 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Joindre 4 tables

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Joindre 4 tables

n°2063469
spoque
Posté le 14-03-2011 à 22:48:01  profilanswer
 

Bonjour j'ai 4 tables qui comporte les mêmes champs avec une clés primaire sur le ID.
 
j'essaye avec ma requête de joindres ces quatres tables mais sans succès.
 
j'ai aussi essayé avec UNION, j'ai séparés les pays par table car je dois insérer dans ces tables chaque ville de tous les pays du monde
avec plusieures informations. afin de ne pas avoir des problèmes de lenteur et de tous faire sur une table j'en ai fait en réalité 250.
 
 
 

Code :
  1. Select
  2.     *
  3. From
  4. ((AfriqueduSud AfriqueduSud RIGHT OUTER JOIN Afghanistan Afghanistan ON (AfriqueduSud.city = Afghanistan.city)) RIGHT OUTER JOIN france france ON (AfriqueduSud.city = france.city)) RIGHT OUTER JOIN emiratsarabesunis emiratsarabesunis ON (AfriqueduSud.city = emiratsarabesunis.city)

mood
Publicité
Posté le 14-03-2011 à 22:48:01  profilanswer
 

n°2063497
mr simon
Posté le 15-03-2011 à 01:57:30  profilanswer
 

Tu peux inserer toutes les villes dans la meme table, ca ira tres bien.
 
Ensuite ca ne sert a rien de renommer une table avec le meme nom.  
 
Et pour finir, a mon avis les conditions du genre Afriquedusud.city = Afghanistan.city seront toujours fausses.

n°2063533
PunkRod
Digital Mohawk
Posté le 15-03-2011 à 09:46:51  profilanswer
 

Si les tables ont les mêmes champs, alors t'as besoin d'une seule table.
 
Ton schéma de base de données est (probablement) mal conçu, même si tu résous ton problème actuel, tu pars sur de mauvaises bases.

n°2063535
spoque
Posté le 15-03-2011 à 10:00:32  profilanswer
 

Merci pou vos réponses, je veux bien faire une seul table seulement je me suis dis que 250 pays + toutes ces villes avec environ 10 champs, la base va être énorme j'ai bien peur que ma requête va être très longue à afficher.
 
voici ma requêtes:
 
SELECT id,titre_francais,titre_espagnol,titre_allemand,titre_englais FROM `france` WHERE city LIKE 'paris'";
 
pensez vous qu' une table c'est bien ou alors je peux en faire 8 par région? (asie,europe,Etc..)
 
 
 
 

PunkRod a écrit :

Si les tables ont les mêmes champs, alors t'as besoin d'une seule table.
 
Ton schéma de base de données est (probablement) mal conçu, même si tu résous ton problème actuel, tu pars sur de mauvaises bases.


Message édité par spoque le 15-03-2011 à 10:03:16
n°2063536
PunkRod
Digital Mohawk
Posté le 15-03-2011 à 10:07:48  profilanswer
 

Ben le boulot d'une base de données c'est de faire ce genre de choses.
C'est pas "250 pays" qui vont mettre à genou le système.  
Tu as les index pour optimiser les performances.
 
Si tu es sceptique, regarde ce forum : y a des millions de message dans des dizaines de catégories différentes, et ça marche bien. Et c'est du mysql derrière :o
 

n°2063539
rufo
Pas me confondre avec Lycos!
Posté le 15-03-2011 à 10:29:31  profilanswer
 

Une table MyIsam (Mysql), de mémoire, peut accueillir jusqu'à 50 millions d'enregistrements. Donc pas de pb.
 
Perso, j'ai actuellement une base dont plusieurs tables font chacune plus de 10 millions d'enregistrements et ça va très vite de rechercher des infos dedans (< 2-3s)


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2063544
spoque
Posté le 15-03-2011 à 10:48:14  profilanswer
 

Merci beaucoup pour vos réponses je vais faire qu'une seul table bien indexé.
 
Cédric
 
 

rufo a écrit :

Une table MyIsam (Mysql), de mémoire, peut accueillir jusqu'à 50 millions d'enregistrements. Donc pas de pb.
 
Perso, j'ai actuellement une base dont plusieurs tables font chacune plus de 10 millions d'enregistrements et ça va très vite de rechercher des infos dedans (< 2-3s)


n°2064082
skeye
Posté le 16-03-2011 à 14:13:29  profilanswer
 

Hésite pas à faire une table pour les pays et une autre pour les villes, on sait jamais, ça pourrait servir.[:doc petrus]

 

[edit]

 

...et j'ai des tables de plus de 10 millions de lignes sans gros problèmes de perfs.[:doc petrus]


Message édité par skeye le 16-03-2011 à 14:15:33

---------------
Can't buy what I want because it's free -

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Joindre 4 tables

 

Sujets relatifs
[RESOLU] [MySQL] Jointures sur 3 tables[archi mysql] splitter ou non des tables pour gagner en perf ?
Formulaire multi-tablessynchroniser des tables avec un trigger
pb de requete sur plusieurs tables[Mysql] Remonter des tables Innodb sur une autre base à partir des frm
[ACCESS] Rafraichissement tables liés avec requêtesJoindre 2 tables identiques
[VBA-Excel] Joindre 2 tables[mysql] Joindre des tables [résolu]
Plus de sujets relatifs à : Joindre 4 tables


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR