begin process at 2012 05 30 22:43:19
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Base de données

 > 

MySQL

 > 

Optimisation de requetes


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Optimisation de requetes

lundi 29 mai 2006 à 23:46:58 | Optimisation de requetes

Tilix

Salut,

Je voudrais optimiser mes requetes, mais j'ai besoin de votre aide.

1ere, j'ai un forum, et sur celui ci, je voudrais y affiché les informations du membre ayant posté un sujet, sur une autre base de donnée que le forum :

require ("bdd1.php");
require ("bdd2.php");

$requete
= 'SELECT id, createur, sujet, timestamp FROM table_forum WHERE type="1" ORDER BY id DESC LIMIT 0,15';
$query = mysql_query($requete,$bdd1);
while($recupere = mysql_fetch_array($envoi))
{

  $select_membre = 'SELECT pseudo, prenom, age FROM table_membre WHERE id = "'.$recupere['createur'].'"';
  $query_membre = mysql_query($select_membre,$bdd2);
  $recupere_membre = mysql_fetch_array($query_membre);

  echo'Topic créer par : '.$recupere_membre['pseudo'].' prénomé '.$recupere_membre['prenom'].' agé de '.$recupere_membre['age'].' le '.$recupere['timestamp'].'<br />';
  echo'Sujet du topic : '.$recupere['sujet'].'<br />';

}

>> Celà fait 16 requetes, qui fait quand même beaucoup ^^


2eme, faire un regroupement de requetes... :

$insert1 = 'INSERT INTO Table1 (id) VALUES ("1")';
$insert2 = 'INSERT INTO Table2 (pseudo) VALUES ("patapouf")';
$delete = 'DELETE FROM Table3 WHERE id = "5"';

mysql_query($insert1);
mysql_query($insert2);
mysql_query($delete);


Merci de votre aide
Tilix.
mardi 30 mai 2006 à 04:20:20 | Re : Optimisation de requetes

hlimaiem



Limaiem heykel,
Bonjour , tu peut utiliser les requetes compose don voici un exemple
SELECT * FROM nom_de_table WHERE id_persone IS (IN ou NOT IN) (SELECT id_xxx FROM table WHERE id=.......)
Tu peut orienter tes requete dans ce sens tu gangnerai bq en rapidite.
Sinon tu peut toujours utiliser les vues c'est aussi une solution quand t'a plusieurs enregistrement et tu veux les traiter separement
mardi 30 mai 2006 à 09:43:29 | Re : Optimisation de requetes

sidf

 salut
 au passage pour info


echo ' Topic créé par : '.$recupere_membre['pseudo'].' prénommé '.$recupere_membre['prenom'].âgé de '.$recupere_membre['age'].' le '.$recupere['timestamp'].'<br />';
 
echo 'Sujet du topic : '.$recupere['sujet'].'<br />';

sujet du topic --> genre de pléonasme non ?
mardi 30 mai 2006 à 12:57:17 | Re : Optimisation de requetes

Anthomicro

Salut,

en une seule requête :

$requete = 'SELECT f.id, f.createur, f.sujet, f.timestamp,m.pseudo,m.prenom,m.age FROM table_forum f LEFT JOIN table_membre m ON m.id=f.createur WHERE f.type=1 ORDER BY f.id DESC LIMIT 15'; //attention au limit c'est pas optimisé

$query = mysql_query($requete);

while($recupere = mysql_fetch_array($envoi))
{
  echo'Topic créer par : '.$recupere['pseudo'].' prénomé '.$recupere['prenom'].' agé de '.$recupere['age'].' le '.$recupere['timestamp'].'<br />';
  echo'Sujet du topic : '.$recupere['sujet'].'<br />';

}


pour les optimisation MySQL : Optimiser MySQL

a +

    mardi 30 mai 2006 à 21:47:55 | Re : Optimisation de requetes

    Tilix

    hlimaiem et Anthomicro
    > Ce genre de requetes ne sont possible dans la limite où les 2 tables se situe sur la même base de donnée, ce qui n'est pas le cas ici.

    sidf
    > Non se n'est pas un pléonasme, mais on peut dire sinon : Titre du topic... (étant donné que c'est un forum ^^')
    mardi 30 mai 2006 à 22:36:26 | Re : Optimisation de requetes

    Anthomicro

    Dans ce cas là faut revoir la conception de ta base de données, car c'est mal conçu là :-(

      mardi 30 mai 2006 à 22:56:10 | Re : Optimisation de requetes

      Tilix

      Non elle n'est pas mal concu, elle est comme ça à cause d'un nombre trop important de requetes ;) (que j'essaye par la même occasion d'optimisé)
      Personne n'a de réponse pour ma 2e requetes ?
      mardi 30 mai 2006 à 23:27:02 | Re : Optimisation de requetes

      Anthomicro

      " Non elle n'est pas mal concu, elle est comme ça à cause d'un nombre trop important de requetes ;) "

      Si tu le dis... bon courage :)


        mardi 30 mai 2006 à 23:41:13 | Re : Optimisation de requetes

        FhX

        "Ce genre de requetes ne sont possible dans la limite où les 2 tables se situe sur la même base de donnée, ce qui n'est pas le cas ici." Alors tu ne peux rien faire.
        mercredi 31 mai 2006 à 00:28:51 | Re : Optimisation de requetes

        Anthomicro

        Bah si changer de conception, mais bon apparemment c'est bien conçu donc bon non il ne peut rien faire en fait :-( (c'est le vendeur de serveurs qui doit être content)



          1 2

          Cette discussion est classée dans : mysql, query, requetes, membre, recupere


          Répondre à ce message

          Sujets en rapport avec ce message

          Prob : Récuperer des valeurs à partir d'une liste [ par gssk ] Je n'arrive pas à recuper une valeur à partir d'un id seclectioné ds une liste, l'erreur est sur le mysql_fetch_array (en rouge) est ce que qqun pourr connection membre [ par gorn deja pris ] Voila j'ai un ptit soucis, je débute le php, et j'essai de faire une page où l'on peut se connecter, le truc c'est que j'ai déjà fais les inscriptions Membre => Ligue [ par gorn deja pris ] Bonjour,je débute en php, et pour apprendre le php, je me suis décidé à faire un système de ligue pour mon site (traitant d'une série de jeu et dont l condition avec mysqlfetcharray [ par nahzhir ] bonjour a tous donc voila dans la categorie photo de mon site je voudrais afficher les 3 photo les plus recentes donc j'ai pensé faire ça :$query = "S ameliorer ma messagerie interne [ par 0123azerty ] bjr a tous ... lors des envois des messages d'un membre a un autre, le membre en question doit choisir dans une liste deroulante l'autres membre a qui Pb export mysql vers csv [ par 44phileas ] j'utilise un script qui permet d'exporter des données de ma base SQL vers un fichiers csv pour un traitement ultérieur. Tout fonctionne correctement S problème de variable dans une requete mysql [ par Moritus ] bonjour, j'ai quelques petits problèmes avec un bout de code. habituellement j'utilise $data['texte'] pour récupéré le contenu d'un champ de ma t SQL [ par dudu134 ] Dudu134Bonjour à tous le forum,Voici mon code :$query = mysql_query('SHOW COLUMNS FROM nom_logiciels') or die(mysql_error());while ($row = mysql_fetch Probleme dans mon script instant gagnant [ par lekenin76 ] Juste pour savoir si quelqu'un a un idee??$hostname_Connex = '127.0.0.1'; $database_Connex = 'base'; $username_Connex = 'root'; $password_Connex = 'ri script site [ par killeur ] Bonjour voila je suis débutant en php et je suis en train de codé mon propre site mai voila je block sur un script voici le script


          Nos sponsors


          Sondage...

          Comparez les prix

          CalendriCode

          Mai 2012
          LMMJVSD
           123456
          78910111213
          14151617181920
          21222324252627
          28293031   

          Consulter la suite du CalendriCode

          A découvrir



           
          Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
          CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
          CodeS-SourceS.com© est une marque déposée tous droits réservés

          Google Coop CodeS-SourceS Google Coop CodeS-SourceS
          Temps d'éxécution de la page : 0,499 sec (4)

          Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales