2015-06-08 10 views
14

शीर्षक यह सब कहता है। क्या मैं चाहता हूँ तो जैसे एक से अधिक मान के लिए जहां स्थिति की जांच करने के लिएलार्वेल -> जहां ('आईडी', ARRAY)। कई जहां स्थितियां लार्वेल 4

DB:table('items')->where('something', 'value')->get() 

लेकिन:

DB:table('items')->where('something', 'array_of_value')->get() 

वहाँ ऐसा करने का एक आसान तरीका है

मैं यह है कि मैं यह कर सकता हूँ?

+0

अगर आप खुश हैं नीचे मेरे उत्तर के साथ, आप इसे स्वीकार कर सकते हैं :) –

उत्तर

40

वहाँ whereIn() है:

$items = DB::table('items')->whereIn('id', [1, 2, 3])->get(); 
0

आप एक से अधिक उपयोग करने की आवश्यकता where कॉल

DB:table('table')->where('column', 'operator', 'value') 
    ->where('column', 'operator', 'value') 
    ->where('column', 'operator', 'value') 
    ->get(); 

यह AND ऑपरेटर का प्रयोग करेंगे। अगर आपको OR की आवश्यकता है तो आप orWhere विधि का उपयोग कर सकते हैं।

उन्नत where बयान

DB::table('table') 
    ->where('column', 'operator', 'value') 
    ->orWhere(function($query) 
    { 
     $query->where('column', 'operator', 'value') 
      ->where('column', 'operator', 'value'); 
    }) 
    ->get(); 

और आप

DB:table('table')->where('something', 'operator', 'value') 
    ->whereIn('column', [value, value, value]) 
    ->get() 
1

उपयोग कर सकते हैं आप WHERE column IN उपयोग करने के लिए nedd अगर आपके पास कई पैरामीटर द्वारा की जरूरत है के लिए:

DB:table('table')->whereIn('id', $ids)->where('status', 1)->get(); 
संबंधित मुद्दे