我正在构建一个存储产品信息的应用程序,即名称、类别、价格等。
一个产品可以属于多个类别,因此会有一个类别表来保存针对产品的此信息,但是我希望允许用户能够根据他们喜欢的任何词搜索产品。我的意思是用户可以输入产品名称、描述中的内容、类别、价格等。完全取决于用户。
我猜测的查询(因为它尚未构建)将类似于:
SELECT * FROM tbl_product
JOIN tbl_category ON tbl_product.product_id = tbl_category.product_id
WHERE
tbl_product.name LIKE $query
OR tbl_product.description LIKE $query
OR tbl_category.category etc.
我想知道存储这些数据的最佳方法是什么,因为我在产品表中还有一列是产品类型,目前是一个整数(1 = 顶部,2 = 底部,3 = 鞋子等)但是用户搜索top 不会在搜索中输入 1,他们会输入 top 或 tops。我知道基于整数进行搜索会更快,但是将“top”存储在产品表中以搜索或存储“1”并进行连接会更快吗?
谢谢