2017-11-09 16 views
0

実際にこれは私が以前に尋ねた質問ですが、私は顧客のテーブルを持っていて、そのnullは他の何かをすれば、そのすべてが、私はそのNULLまたは0より大きく、これは私がこのコードを試してみました動作しますが、それはlaravelコントローラの場合とコントローラの場合の検証方法

$query = Customer::where('customer_id', 'LIKE', $request->customer_id) 
       ->where('package_id','>', 0) 
       ->get(); 

if(!empty($query) && count($query) > 0){ 
    //do something 
} else { 
    //do something else 
} 

答えて

0

あなたnullの場合、それは気にしないだろうではないかどうかを確認するだけで必要な何かを行いますあなたの質問にwhereNotNullを追加することができます。

また、あなたはこのようなあなたのクエリで直接行の数を数えることができる、あなたのクエリからNULL値を削除するために whereNotNullメソッドを使用する必要が
$query = Customer::where('customer_id', 'LIKE', $request->customer_id) 
      ->where('package_id','>', 0) 
      ->whereNotNull('package_id') 
      ->get(); 

if (!empty($query) && count($query) > 0) { 
    //do something 
} else { 
    do something else 
} 
1

$count = Customer::where('customer_id', $request->customer_id) 
       ->where('package_id','>', 0) 
       ->whereNotNull('package_id') 
       ->count(); 

if($count > 0) { 
    //do something 
} else { 
    //do something else 
} 
+0

問題は、コードがないことですpackage_idがcustomer_idの同じ行にあるかどうかを確認して、package_idがnullでない場合は、テーブル全体をチェックしますが、特定の行はチェックしないでください。customer_idは顧客IDを要求します。 –

+1

"そのコードはチェックしませんcustomer_idの同じ行にあるpackage_id "?私たちはあなたのテーブルスキーマを表示できますか? – YouneL

関連する問題