2017-07-26 11 views
0

私はnameno_of_sellカラムの商品表を持っています。 no_of_sellカラムに基づいて最高の5個の製品を取得したいと考えていました。 クエリビルダーでどのように使用しますか?カラムから最高5つの値を取得する方法は?

$propular_products = DB::table('users') 
      ->join('products','products.auth_id','users.id') 
      ->select('products.*') 
      ->orderBy('products.no_of_sell', 'desc')    
      ->where('products.status','=','1') 
      ->paginate(5); 

仮定するproductsテーブルは:

name no_of_sell 
x  6 
y  9 
z  10 
t  23 
u  3 
h  11 
r  5 

は、私は、私は列no_of_sellでそれを正しく理解すればintで

products list of 5 max no_of_sell ie, x y z t h 
+1

あなたはORDERBYを使用することができます[https://laravel.com/docs/5.4/queries#ordering-grouping-limit -and-offset](https://laravel.com/docs/5.4/queries#ordering-grouping-limit-and-offset) –

答えて

0
$best_sell = DB::table('products') 
     ->select('no_of_sell') 
     ->where('products.status','=','1')      
     ->orderBy('no_of_sell', 'desc') 
     ->paginate(4); 
+0

私はdescを使用しましたが、問題は適切なものではないことです。 no_of_sellの値が7 9 10 12 15であると仮定します。私は4つのデータを取得したいと思います。9 10 12 15を返すはずですが、7を返します。9 12 15 – User57

0
$best_sell = DB::table('products') 
     ->select() // your selection criteria 
     ->where('products.status','=','1') 
     ->take(5)->get(); 
+0

最高の5つの値を探していました.. – User57

+0

最高です5値のみ。 –

関連する問題