请帮忙,我对我的情况很困惑。
我开始创建一个搜索功能,但我不确定最好的方法。在前端用户将能够在文本字段中输入单词,然后这些将搜索 MYSQL 数据库,如下所示:
因此他们搜索“成人”并列出“名称”列中带有“成人”的每个 item_id(主键)。或者他们输入“黑色”并列出“颜色”中带有“黑色”的每个 item_id。或者他们输入“成人蓝”,每一个带有“成人”或“蓝”的项目都会出现。我相信你明白了。
我已经阅读了多种方法,但我不知道哪种方法最好:
使用MANY TO ONE表:这似乎可行,但有超过 500 个独特的项目,所以会有成千上万的行。对于 item_id 1,我必须为“成人”制作一行,为“牛仔布”制作一行,为“裤子”制作一行,为“黑色”制作一行,为“红色”制作一行,为“蓝色”制作一行。我还不如硬编码一切。
使用FIND_IN_SET
:这行得通吗?我是否必须用逗号存储值并分隔Adult,Denim,Pants
值EXPLODE
?我打算尝试这种方法,但我一直在阅读,在一个字段中存储多个值是非常糟糕的做法。
还是我正在寻找的正则表达式?
存储值的最佳方式是什么,检索它们的最佳方式是什么?我不是要求确切的代码,只是要使用的方法。任何建议表示赞赏!