Я пытаюсь создать функцию поиска продукта на веб-сайте электронной коммерции, который я создаю, но у меня небольшие проблемы.поиск товара по 3 таблицам базы данных
У меня есть 3 таблицы (категория, sub_categories, продукты)
Категория полой таблицы: (CategoryId, CategoryName, активный, образ)
sub_categories поле таблицы: (CategoryId, CategoryName, parentCatID, активный, образ)
продукции полей таблицы: (ProductID, SHORTDESCRIPTION, longDescription, образ, CatID, subCatID, активный, цена, доставка, вес)
Im пытается получить свой поиск, чтобы найти продукт, если пользователь Ty pes в любой части краткого описания или длинного описания или если пользователь вводит какую-либо часть имен категорий или подкатегорий, он должен найти все продукты в этих категориях.
Я не знаю, делать ли JOIN или несколько SQL-запросов. честно говоря я уже был возиться с ним в течение нескольких часов, но havnt действительно получили в любом месте и теперь я снова на чертежной доске, с просьбой о помощи
моя первая попытка выглядела так:
$catSelect = mysqli_query($con,"SELECT * FROM categories WHERE categoryName LIKE '%{$term}%'");
$row1 = mysqli_fetch_row($catSelect);
$subCatSelect = mysqli_query($con,"SELECT * FROM sub_categories WHERE categoryName LIKE '%{$term}%' OR parentCatID = '%{$row1[0]}%'");
$row2 = mysqli_fetch_row($subcatSelect);
$productSelect = mysqli_query($con,"SELECT * FROM products WHERE short_description LIKE '%{$term}%' OR long_description LIKE '%{$term}%' OR subCatID = '%{$row2[0]}%' OR catID = '%{$row1[0]}%'");
мой окончательный попытка выглядит так:
mysqli_query($con,"SELECT * FROM products INNER JOIN categories ON products.catID = categories.categoryID WHERE categories.categoryName LIKE '%{$term}%'") or die(mysqli_error());
Может ли кто-нибудь помочь мне с SQL-запросом, который мне нужно использовать?
Ваши попытки запроса (даже если они ошибочны) помогут каждому понять ваш текущий уровень навыков с SQL и предложить соответствующее решение. Более того, чем больше усилий вы показываете, тем больше ответов вы получите –
ok, редактирование для размещения ваших предложений (радикальное использование кнопки отмены) – Kevlar