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

Laravel PHP Discussion :

[Laravel 7] Récupérer des données via une table non présente dans. ma requête SQL


Sujet :

Laravel PHP

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre expérimenté
    Avatar de beegees
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2004
    Messages
    3 610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2004
    Messages : 3 610
    Par défaut [Laravel 7] Récupérer des données via une table non présente dans. ma requête SQL
    Bonjour,

    J'ai écris une requête SQL qui récupère des informations dans plusieurs tablas à partir de l'id d'une plante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    $informations_plante = DB::table('herbs')
                ->select('herbs.name as hname', 'herbs.sciname', 'herbs.id as herbid','hinteractions.id as hinteractionid','hinteractions.note as hinteractionnote','hinteractions.force_id','targets.name as targetname', 'forces.name as force_name')
                ->leftJoin('hinteractions', 'herbs.id', '=', 'herb_id')
                ->leftJoin('forces', 'forces.id', '=', 'force_id')
                ->leftJoin('targets', 'targets.id', '=', 'hinteractions.target_id')->where('herbs.id', $id)
                //add here a subquery to select effects.name from hinteractions_has_effects with hinteractions.id
                ->get();
    La requête générée me donne ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select `herbs`.`name` as `hname`, `herbs`.`sciname`, `herbs`.`id` as `herbid`, `hinteractions`.`id` as `hinteractionid`, `hinteractions`.`note` as `hinteractionnote`, `hinteractions`.`force_id`, `targets`.`name` as `targetname`, `forces`.`name` as `force_name` from `herbs` left join `hinteractions` on `herbs`.`id` = `herb_id` left join `forces` on `forces`.`id` = `force_id` left join `targets` on `targets`.`id` = `hinteractions`.`target_id` where `herbs`.`id` = 6
    et le résultat obtenu est le suivant :

    Nom : Capture d'écran 2020-05-23 21.04.13.png
Affichages : 797
Taille : 183,5 Ko

    J'aimerais afficher le nom effects qui se trouvent dans cette table :

    Nom : Capture d'écran 2020-05-23 21.06.37.png
Affichages : 871
Taille : 745,5 Ko

    En passant par cette table (j'ai l'id des hinteractions) :

    Nom : Capture d'écran 2020-05-23 21.07.37.png
Affichages : 848
Taille : 331,1 Ko

    Je ne vois pas comment je peux faire avec la requête SQL ci-dessus.

    Est-ce que je dois ajouter une sous-requête ?

    Merci d'avance pour l'aide.
    Images attachées Images attachées  

Discussions similaires

  1. Réponses: 3
    Dernier message: 04/10/2015, 08h43
  2. Récupérer des données d'une table dans l'analyse
    Par adnan el dans le forum WinDev
    Réponses: 1
    Dernier message: 22/05/2014, 12h31
  3. Réponses: 1
    Dernier message: 26/08/2013, 17h24
  4. Récupérer des données d'une table "étrangère"
    Par surf-max dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 29/06/2010, 10h25
  5. [MySQL] récupérer des données depuis une table mysql
    Par godbless dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 23/10/2008, 13h04

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