2017-06-17 2 views
1

First tableJe veux imprimer dans Laravel

second table

une valeur de colonne d'une table à l'aide id généré à partir d'une autre table que je veux imprimer les noms des trois premières balises de tendance (celle qui sont les plus utilisées). Afin d'obtenir l'id tags tendance J'ai utilisé cette requête qui travaille

DB::table('review_tag')->select('tag_id')->groupBy('tag_id')->orderBy(DB::raw('count(tag_id)'), 'desc')->take(3)->get(); 

Maintenant, je dois obtenir les noms des balises d'une table balises en utilisant l'identifiant je suis arrivé de review_tag table à l'aide ci-dessus requête

J'ai essayé d'utiliser cela, mais ça n'a pas

B::table('review_tag')->join('tags', 'tags.id', '=', 'review_tag.tag_id')->select('tags.name')->groupBy('tag_id')->orderBy(DB::raw('count(tag_id)'), 'desc')->take(3)->get(); 

Répondre

1

Utilisez le résultat de votre première requête dans un second comme:

$results = ... first query 

B::table('tags')->select('name')->whereIn('id', $results->toArray())->get(); 
+0

« erreur PHP: objet de la classe stdClass ne pouvait pas être convertie en chaîne » Ceci est l'erreur que je reçois. Peux-tu aider s'il te plait? –