2016-11-04 67 views
0

我正在构建一个使用PHP作为后端和mysql作为数据库的食物列表应用程序。我创建了三个表格进行搜索。下面是表:食物和餐厅搜索/过滤应用程序的数据库表结构

ADD RESTAURANT 
id (AI primary) 
res_id 
name 
description 


FOOD CATEGORY (eg chinese, indian) 
id (primary AI) 
cat_id 
res_id 
category_name 

FOOD SUB CATEGORY (eg noodles, chilly chicken) 
id (PRIMARY AI) 
cat_id 
sub_id 
name 
price 

我怎么这三个表等环节,当有人为它显示从第一个表店的特定食品项目搜索,如果搜索的类别,然后将它显示的店铺名称也如按子类别名称搜索,然后显示商店名称。任何形式的帮助,将不胜感激。

+0

例如,您可以使用[JOINS](https://www.sitepoint.com/understanding-sql-joins-mysql-database/) –

回答

-1

您可以使用多表搜索JOIN代码见下文。

$query = "SELECT rest.name FROM RESTAURANT as rest INNER JOIN CATEGORY as cat ON cat.res_id = rest.res_id" 
       . " INNER JOIN SUB_CATEGORY as sub_cat ON sub_cat.cat_id = cat.cat_id" 
       . " where rest.name like '" . $search . "%' OR cat.category_name like '" . $search . "%' OR sub_cat.name like '" . $search . "%'";