IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Comment fusionner deux request MySQL


Sujet :

PHP & Base de données

  1. #1
    Membre expérimenté
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 149
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 149
    Par défaut Comment fusionner deux request MySQL
    Bonjour à tous,
    je fais fasse un probleme qui au dessus de mes compétences.
    J'aimerais fusionner des requetes MySQL et je n'y arrive pas.
    Voici les les quetes:
    Extrcations des No produits selon les caractéristiques:
    Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    		$query						= 'SELECT fl.`name`, fvl.`value`, pf.`id_feature`, pf.`id_product` 
    									FROM `'._DB_PREFIX_.'feature_product` pf
    									LEFT JOIN `'._DB_PREFIX_.'feature_lang` fl ON (fl.`id_feature` = pf.`id_feature` AND fl.`id_lang` = '.intval($id_lang).')
    									LEFT JOIN `'._DB_PREFIX_.'feature_value_lang` fvl ON (fvl.`id_feature_value` = pf.`id_feature_value` AND fvl.`id_lang` = '.intval($id_lang).')
    									WHERE pf.`id_feature` IN ('.implode(",",$toSearch).') AND fvl.`value` IN (\''.implode("','", $valToSearch).'\') 
    									GROUP BY pf.`id_product` 
    									HAVING COUNT(*) <= '.count($valToSearch);
     
    		$productPool2				= $db->s($query);

    J'aimerais qu'elle soit fusionner à celle-ci. C'est dire que la requete ci-dessous, contient celle de dessus: (Elle retourne aussi les No des produits
    Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    	$eligibleProducts 				= $db->ExecuteS('
    									SELECT DISTINCT cp.`id_product`, tax.`rate`, p.`price` 
    									FROM `'._DB_PREFIX_.'category_group` cg
    									INNER JOIN `'._DB_PREFIX_.'category_product` cp ON cp.`id_category` = cg.`id_category`
    									INNER JOIN `'._DB_PREFIX_.'category` c ON cp.`id_category` = c.`id_category`
    									INNER JOIN `'._DB_PREFIX_.'product` p ON cp.`id_product` = p.`id_product`
    									'.$tax.$leftQuery.'		
    									WHERE c.`active` = 1 AND p.`active` = 1 '.$whereQuery.' 
    									AND cg.`id_group` '.(!$cookie->id_customer ?  '= 1' : 'IN (
    										SELECT id_group FROM '._DB_PREFIX_.'customer_group
    										WHERE id_customer = '.(int)$cookie->id_customer.'
    									)'));
     
    	$productPool 					= '';
    Je ne sais pas si je fournis asse d'information, ou s'il vous en manque.
    Je vous donne aussi les table
    ps_category_group:
    Fields : id_category, id_group
    ps_category_product
    Fields : d_cart, id_product, id_product_attribute, quantity, date_add
    ps_category
    Fields : id_category, id_parent, level_depth, nleft, nright, active, date_add, date_upd, position
    ps_product
    Fields : id_product, id_supplier, id_manufacturer ( ya en d'autres, mais je pense que les autres ne rentre pas en compte)
    ps_feature_product
    Fields : id_feature, id_product, id_feature_value
    ps_feature_lang
    Fields : id_feature, id_lang, name
    ps_feature_value_lang
    Fields : id_feature_value, id_lang,value
    Voilà , j'espère qie vous aller pouvoir m'aider.
    Avez-vous assez d'info?

    Milles merci

  2. #2
    Membre Expert
    Avatar de ericd69
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2011
    Messages
    1 919
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2011
    Messages : 1 919
    Billets dans le blog
    1
    Par défaut
    salut,

    si tes requêtes renvoient exactement les même type de colonnes dans le même ordre et le même nombre alors tu peux faire une union

    regarde la doc mysql pour union pour savoir quelle est la syntaxe la plus appropriée à ce que tu veux (doublons ou pas par exemple)

  3. #3
    Expert éminent
    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 814
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 814
    Billets dans le blog
    14
    Par défaut
    Les deux requêtes ont des objectifs différents.
    Quel est ton besoin ?
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole, en retraite... mais toujours Autoentrepreneur à l'occasion.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

Discussions similaires

  1. Comment fusionner deux partitions ?
    Par sami_c dans le forum Windows XP
    Réponses: 15
    Dernier message: 10/08/2007, 19h57
  2. [FPDF] comment mettre deux table mysql dans un pdf
    Par faucon54 dans le forum Bibliothèques et frameworks
    Réponses: 8
    Dernier message: 16/05/2007, 22h09
  3. Comment fusionner 2 tables MySql
    Par lavm01 dans le forum Requêtes
    Réponses: 1
    Dernier message: 18/01/2007, 08h34
  4. Fusionner deux bases mysql ?
    Par Chris__38 dans le forum Requêtes
    Réponses: 2
    Dernier message: 29/11/2006, 15h35
  5. [C#] Comment fusionner deux DataSet ?
    Par Oberown dans le forum Accès aux données
    Réponses: 3
    Dernier message: 22/05/2006, 11h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo