Réunir 2 requetes en une seule

Discussion dans 'Développement d'un site Web ou d'une appli mobile' créé par sff, 15 Mai 2010.

  1. sff
    sff WRInaute impliqué
    Inscrit:
    2 Février 2005
    Messages:
    531
    J'aime reçus:
    0
    Bonjour,

    J'aimerais savoir si il est possible de réunir ces les 2 requêtes ci-dessous en une seule pour utiliser le moins de ressource possible
    . Il faut également que $tab_items et $tab_equips fonctionne comme maintenant.

    Code:
    $itemsquery = mysql_query("SELECT id, name, attribute1, attribute2 FROM ".$mysql->pref."_items WHERE id IN (".$bonusrow['list_potions'].",".$bonusrow['list_items'].")");
    
    	while ($itemsrow = mysql_fetch_assoc($itemsquery)) {
    
    		$tab_items[$itemsrow['id']] = array("name" => $itemsrow['name'],"attribute1" => $itemsrow['attribute1'],"attribute2" => $itemsrow['attribute2']);
    		
    	}
    	
    	$equipsquery = mysql_query("SELECT id, name, type, special, attribute FROM ".$mysql->pref."_equips WHERE id IN (".$bonusrow['list_equips'].")");
    
    	while ($equipsrow = mysql_fetch_assoc($equipsquery)) {
    
    		$tab_equips[$equipsrow['id']] = array("name" => $equipsrow['name'],"type" => $equipsrow['type'],"special" => $equipsrow['special'],"attribute" => $equipsrow['attribute']);
    		
    	}
    Merci
     
  2. UsagiYojimbo
    UsagiYojimbo WRInaute accro
    Inscrit:
    23 Novembre 2005
    Messages:
    11 887
    J'aime reçus:
    74
    Les tables dans lesquels tu fais tes requêtes n'ont a priori rien à voir. Je ne vois pas comment ça serait possible...
     
  3. jcaron
    jcaron WRInaute accro
    Inscrit:
    13 Février 2004
    Messages:
    2 593
    J'aime reçus:
    0
    C'est possible, mais je ne suis pas sûr que ce soit vraiment une bonne idée...

    select 'items' as row_type,id,name,attribute1,attribute2,'' as type,'' as special,'' as attribute from items where id in (...) union all select 'equips',id,name,null,null,type,special,attribute from equips where id in (...)

    Ensuite tu fais une seule boucle, et à chaque fois tu testes si $row['row_type'] vaut "items" ou "equips" pour mettre d'un côté ou de l'autre.

    Note qu'il est possible qu'il faille remplacer les '' par autre chose de plus adapté (il faut qu'ils aient le même type que les colonnes correspondantes par la suite).

    Mais bon, l'intérêt me semble assez limité, ça ne va pas spécialement réduire la consommation de quoi que ce soit.

    Jacques.
     
Chargement...
Similar Threads - Réunir requetes seule Forum Date
Réunir 2 requêtes MySql Développement d'un site Web ou d'une appli mobile 22 Mai 2013
Réunir 2 requetes sql en une Développement d'un site Web ou d'une appli mobile 23 Novembre 2009
Réunir plusieurs Landing pages en une seule Débuter en référencement 9 Juillet 2020
Dans quelle table réunir les entreprises et associations ? Développement d'un site Web ou d'une appli mobile 2 Février 2015
Site pour réunir les pronostics entre amis Développement d'un site Web ou d'une appli mobile 7 Juillet 2014
Nettoyage de requètes externes de Google, comment faire? Administration d'un site Web 24 Octobre 2020
Comment se placer sur des requêtes inhabituelles dû au confinement Rédaction web et référencement 25 Mars 2020
Déclassement sur requêtes et pays spécifiques? Crawl et indexation Google, sitemaps 11 Janvier 2020
Qwant 20 milliards de requetes en 2018? 2 x plus que Google? Autres moteurs de recherche connus 2 Avril 2019
Marqueur nommé ou interrogatif pour les requetes préparées ? Développement d'un site Web ou d'une appli mobile 30 Décembre 2018