2017-01-08 8 views
0

ピック:私の高度な検索ではLaravel雄弁 - どこで、ブレード内のテーブルのための

は、データベース内のテーブルのために、この写真を参照してください。私はラウンド1とラウンド2である2つの入力ボックスを持っています。 ラウンド1で1を検索し、ラウンド2で1を検索すると

$query->where(['column.round' => 1, 'column.score' => $request->score1] and ['column.round' => 2, 'column.score' => $request->score2]); 

私の質問はこれが持つ複数の行のようなものであるIDのデータのみ1

を表示するには、このを持っており、オペレータにする方法である:tはそれはのような者のID 1. のデータのみが表示されます同じIDの1列。

+0

ないあなたの質問との明確な参照してください、あなたはcolumn.round = 1と同じ列を持つラウンド条件でcolumn.round = 2つの両方の値を検索したいですか? – Parithiban

+0

@pariはい。そして、データベースとブレードのテーブルのために追加した画像を見てください。 ラウンド1で1を検索し、ラウンド2で1を検索した場合は、セッションID 1のみの画像https://i.stack.imgur.com/UfCEV.jpgの最初の行にする必要があります。 – Sansa

答えて

0

私はあなたを取得する場合には、その後の場合であれば、右uが一つだけRAWバックの代わりに、コレクション

たい:

$query->where(['round1' => 1, 'round2' => 1])->first(); 
+0

私はデータベースとブレードのテーブルの写真を追加しました。 よろしくお願いいたします。ありがとうございます。 したがって、ラウンド1で1を検索し、ラウンド2で1を検索すると、sessionid 1の行だけが表示されます。ありがとう。 – Sansa

+0

あなたの画像と説明に基づいて回答を編集しました – user1968819

0

あなたはこのコードを試すことができます。 here

$query->where(function ($roundQuery) { 
      $roundQuery->where('round', '=', 1) 
        ->orWhere('round', '=', 2); 
     }) 
     ->where(function ($scoreQuery) use($request) { 
      $scoreQuery->where('score', '=', $request->score1) 
        ->orWhere('score', '=',$request->score2); 
     }) 
     ->get();