A speichert Produkte und ihre Unterprodukte in einer Tabelle. Das Produkt hat eine Selbstreferenz für 'parentId'. Wenn es sich nicht um Unterprodukte handelt, ist parentId NULL und es gibt nur eine Verschachtelung auf einer Ebene. Daher haben Unterprodukte keine Unterprodukte. Ich möchte eine Suchabfrage implementieren, die alle Datensätze durchsucht, aber übergeordnete Produkte zurückgibt. Wenn Sie also nach einem Begriff suchen, der mit einem Unterprodukt übereinstimmt, werden die übergeordneten Produkte angezeigt. Dies ist meine aktuelle Abfrage:In allen Datensätzen suchen, aber nur die übergeordneten Produkte und keine Unterprodukte zurückgeben, Laravel5.2
$products = Product::with('categories')
->where('is_active', '=', 1)
->where('name', 'LIKE', "%$search_term%")
->where('brand', 'LIKE', "%$search_term%")
->orWhere('description', 'LIKE', "%$search_term%")
->orderBy('id', 'ASC')
->where('parent_pid', '=', 'NULL')
->get();
versuchen, diese 'whereNotNull ('parent_pid')' statt dessen ' -> wo ('parent_pid', '=', 'NULL') ' – Pankaj