Séparer une table MySQL
8 messages
• Page 1 sur 1
-

sim100 - WRInaute passionné

- Messages: 1431
- Inscription: 2 Fév 2003
Séparer une table MySQL
Bonjour
Voila, je vais essayer d'expliquer mon problème:
J'ai un site avec une table de plusieurs milliers de lignes, chiffre qui augmente en pernanence évidement.
Dans cette table, j'ai des noms d'endroit du monde classé par continent, pays, villes et lieux.
Donc sur mon site quand quelqu'un ouvre une page sur la tour eifel par example il y a une recheche qui se fait sur toute la table, tous les continents, tous les pays etc...
Donc y a t-il moyen de faire en sorte que comme la toue eifel est dans Paris, de faire un recherche QUE dans le pays france par exemple, que la recherche se passe que dans les lignes appartenant à la catégorie france, ou europe.
De façon à soulager le nombre de requêtes.
Merci, si il y a une doc qqpart
Voila, je vais essayer d'expliquer mon problème:
J'ai un site avec une table de plusieurs milliers de lignes, chiffre qui augmente en pernanence évidement.
Dans cette table, j'ai des noms d'endroit du monde classé par continent, pays, villes et lieux.
Donc sur mon site quand quelqu'un ouvre une page sur la tour eifel par example il y a une recheche qui se fait sur toute la table, tous les continents, tous les pays etc...
Donc y a t-il moyen de faire en sorte que comme la toue eifel est dans Paris, de faire un recherche QUE dans le pays france par exemple, que la recherche se passe que dans les lignes appartenant à la catégorie france, ou europe.
De façon à soulager le nombre de requêtes.
Merci, si il y a une doc qqpart
- Leguerinos
- WRInaute discret

- Messages: 143
- Inscription: 26 Juil 2006
Pourquoi ne fais-tu pas , en fonction de tes champs, une requête du type :
SELECT * FROM ma_table WHERE $_POST['Pays'] = 'France'
Ou quelque chose de similaire en fonction de ton type de données (POST, GET, ...)
SELECT * FROM ma_table WHERE $_POST['Pays'] = 'France'
Ou quelque chose de similaire en fonction de ton type de données (POST, GET, ...)
-

sim100 - WRInaute passionné

- Messages: 1431
- Inscription: 2 Fév 2003
oui
Oui ça c'est fait.
Mais le programme est quand meme obligé de chercher parmis plusieurs milliers de ligne.
Il m'a semblé entendu dire qu'il y avais un moyen de séparer ça, je en suis pas sur et je ne sais pas comment!
C'est à dire limiter la recherche parmis moins de lignes...
Merci
Mais le programme est quand meme obligé de chercher parmis plusieurs milliers de ligne.
Il m'a semblé entendu dire qu'il y avais un moyen de séparer ça, je en suis pas sur et je ne sais pas comment!
C'est à dire limiter la recherche parmis moins de lignes...
Merci
- Leguerinos
- WRInaute discret

- Messages: 143
- Inscription: 26 Juil 2006
Je crois que tu fais allusion aux index ...
Effectivement, ils permettent sur des grosses bases de diminuer le temps de recherche.
Utilise la commande CREATE INDEX.
Effectivement, ils permettent sur des grosses bases de diminuer le temps de recherche.
Utilise la commande CREATE INDEX.
- petit-ourson
- WRInaute impliqué

- Messages: 855
- Inscription: 31 Mai 2004
Normalement tu as des index sur tes champs continents, pays et villes. Normalement le type de ces champs sont des entiers. Donc en partant de là tu as déjà optimisé l'essentiel de ton modèle de données.
Normalement avec des requêtes simples, cela devrait être rapide même avec quelques milliers de villes.
Un sgbd est fait pour recherches dans des milliers de lignes, pas uniquement dans 10 lignes.
Normalement avec des requêtes simples, cela devrait être rapide même avec quelques milliers de villes.
Un sgbd est fait pour recherches dans des milliers de lignes, pas uniquement dans 10 lignes.
-

sim100 - WRInaute passionné

- Messages: 1431
- Inscription: 2 Fév 2003
ok
OK, merci, en fait je pense que je suis bien optimisé.
J'ai un VPS au USA et régulièrement ma base était HS et je devais redémarrer le service
J'ai contacté le service client et en fait le max authorisé était 100 personnes en même temps sur la base, ils m'ont augmenté à 150, ça va pour l'instant, je vais voir
J'ai un VPS au USA et régulièrement ma base était HS et je devais redémarrer le service
J'ai contacté le service client et en fait le max authorisé était 100 personnes en même temps sur la base, ils m'ont augmenté à 150, ça va pour l'instant, je vais voir
- Leguerinos
- WRInaute discret

- Messages: 143
- Inscription: 26 Juil 2006
Ok pas de problème.
Bonne journée.
Bonne journée.
8 messages
• Page 1 sur 1
Lectures recommandées sur ce thème :
- PHP MySql copy table à table [RESOLU]
- UPDATE TABLE MYSQL !
- table mysql : category
- Erreur creation de table Mysql
- MYSQL TABLE VS BASE DE DONNÉE?
- Contenu de table MySQL référencé???
- Dédoublonner une table MySql par id
- [MYSQL] Pb de requête + optimisation structure table
- Exporter un champ d'une table Mysql
- [mysql] insertion si pas dans la table
- Les pays gérés par la Google Toolbar 2.0 - 26-06-2003
- GoogleStats : analyse temps réel des visites de Google sur votre site - 02-10-2002
- Yahoo Slurp et autres robots d'indexation de Yahoo - 07-03-2004
- AdSense Tracking : statistiques détaillées sur les clics AdSense - 29-02-2004
- Sortie officielle de GoogleStats v2.0 ! - 23-02-2003
- Services et outils de Yahoo! Search - 17-02-2004
- Parts de marché des moteurs aux USA (Octobre 2006) - 04-12-2006
- Script de mise en cache des pages (PHP MySQL) - 09-08-2010
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités
