에 검색어를 작성하는 데 문제가 있습니다 laravel eloquent ORM
.
내 질문은
SELECT book_name,dt_of_pub,pub_lang,no_page,book_price
FROM book_mast
WHERE book_price NOT IN (100,200);
이제이 쿼리를 laravel 웅변으로 변환하고 싶습니다.
답변
쿼리 작성기 :
DB::table(..)->select(..)->whereNotIn('book_price', [100,200])->get();
웅변 :
SomeModel::select(..)->whereNotIn('book_price', [100,200])->get();
답변
다음과 같은 방법으로 WhereNotIn 을 사용할 수도 있습니다.
ModelName::whereNotIn('book_price', [100,200])->get(['field_name1','field_name2']);
특정 필드를 가진 레코드 콜렉션을 리턴 합니다.
답변
->toArray()
결과에 메소드 를 추가 할 때까지 하위 쿼리를 만드는 데 문제 가 있었으며 솔루션을 찾는 데 좋은 시간을 보냈으므로 둘 이상 도움이되기를 바랍니다.
예
DB::table('user')
->select('id','name')
->whereNotIn('id', DB::table('curses')->select('id_user')->where('id_user', '=', $id)->get()->toArray())
->get();
답변
whereNotIn을 구현하는 동적 인 방법 :
$users = User::where('status',0)->get();
foreach ($users as $user) {
$data[] = $user->id;
}
$available = User::orderBy('name', 'DEC')->whereNotIn('id', $data)->get();
답변
whereNotIn 메소드는 주어진 열의 값이 주어진 배열에 포함되어 있지 않은지 확인합니다 :
$users = DB::table('users')
->whereNotIn('id', [1, 2, 3])
->get();
답변
WhereNotIn
다음과 같은 방법으로 사용할 수 있습니다 .
$category=DB::table('category')
->whereNotIn('category_id',[14 ,15])
->get();`enter code here`
답변
이 예제를 사용하여 Where NOT IN 을 동적으로 호출 할 수 있습니다
$ user = User :: where ( 'company_id', '=', 1)-> select ( 'id)-> get ()-> toArray (); $ otherCompany = 사용자 :: whereNotIn ( 'id', $ user)-> get ();