두 개의 다른 laravel 쿼리가 있는데 첫 번째 쿼리를 기반으로 whereNotIn
과 함께 두 번째 쿼리를 사용하려고합니다. 아직 데이터가 표시되어 있기 때문에 whereNotIn
이 작동하지 않는 것 같습니다. laravel whereNotIn not working
$detailservice = DetailServiceOrder::leftJoin('services', 'detail_service_orders.service_id', '=', 'services.id')
->select('detail_service_orders.*',
'services.service_name')
->where('sales_order_id', $id)
->get();
이 두 번째 쿼리
foreach ($detailservice as $data) {
$service[] = Service::whereNotIn('id', [$data->service_id])->get();
}
dd($service);
여기 내 dd($service)
결과 샘플
#attributes: array:4 [▼
"id" => 2
"service_name" => "Mail Service"
"created_at" => "2016-11-26 02:15:24"
"updated_at" => "2016-11-26 02:15:24"
]
#attributes: array:4 [▼
"id" => 1
"service_name" => "Network Maintenance"
"created_at" => "2016-11-15 07:00:45"
"updated_at" => "2016-11-15 07:00:45"
]
여기 내 dd($detailservice)
결과 샘플
#attributes: array:10 [▼
"sales_order_id" => 6
"service_id" => 1
"order_type" => "add"
"select_plan" => "test 1"
"qty" => 2
"unit_price" => 200.0
"note" => "testing 1"
"updated_at" => "2016-12-22 01:34:00"
"created_at" => "2016-12-22 01:34:00"
"service_name" => "Network Maintenance"
]
#attributes: array:10 [▼
"sales_order_id" => 6
"service_id" => 2
"order_type" => "change"
"select_plan" => "test 2"
"qty" => 3
"unit_price" => 400.0
"note" => "testing 2"
"updated_at" => "2016-12-22 01:34:00"
"created_at" => "2016-12-22 01:34:00"
"service_name" => "Mail Service"
]
위의 dd($service)
결과는 두 번째 쿼리에서 필터링 되었기 때문에 표시해서는 안됩니다.
,'쇼를? –
안녕하세요, 내 질문에'dd ($ detailservice)'를 추가했습니다. – rafitio
감사합니다. 아래 답변을 확인하십시오. –