sách gpt4 ai đã đi

mysql表重新设计思路(关系)

In lại 作者:行者123 更新时间:2023-11-29 08:48:58 29 4
mua khóa gpt4 Nike

我的表具有如下关系:

ERD

我有相互链接的级联下拉框,即当您选择国家/地区时,该国家/地区下的区域将加载到区域下拉列表中。但现在我想将下拉菜单更改为基于 Ajax 的自动完成文本框。

我的问题是,我应该有多少个文本框?如果我为“按位置搜索”等所有内容设置一个文本框,我需要更改表格设计,或者为每个国家、地区、城市等设置一个文本框,

如果我有这样的文本框,用户可能不知道,很少有地方是地区还是城市,例如新西兰奥克兰是地区而不是城市。

他们可以在城市文本框中搜索地区并在地区文本框中搜索城市...现在他们有一个下拉列表,他们可以从中看到他们的地区,“奥克兰肯定会在地区中”

我可能无法从各个文本框中找到我想要的内容,

我需要一些从数据库和界面角度重新设计的建议。

1 Câu trả lời

你的架构很好。但听起来用户至少想要的是:1. 谷歌风格的自由格式文本字段,他们可以只输入单词,但是......2. 以组合方式显示匹配结果的子集。

所以事情是这样的:类似搜索的功能并不是关系数据库的设计目的,这基本上就是您遇到的问题。也就是说,MySQL 虽然不是我的专业领域,但似乎确实具有合理的全文搜索支持 ( MySQL Full Text Search ).

也许您Có thể在每个描述字段上拥有全文索引并发出五个不同的查询。或者,如果您愿意采用肮脏的解决方案,可以有一个单独的 BUSINESS_SEARCH(business_id, concat_description) ,其中 concat_description 只是所有相关的“描述”字段混合在一起;但您需要考虑描述更新。

但我不知道 FULLTEXT 对性能有何影响。如果这很重要,我会将这些查询卸载到服务器的单独副本。

我个人的感觉(完全没有证据支持)是您将来会遇到性能问题。您是否考虑过添加一个附加组件?快速谷歌搜索引擎显示 Google-like Search Engine in PHP/mySQL 。最大的缺点是您引入了尚未证实/不熟悉的技术的所有陷阱。

对于任何一种方法,我认为您都需要进行一些研究。

Chúc may mắn!

关于mysql表重新设计思路(关系),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11812199/

29 4 0
行者123
Hồ sơ cá nhân

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá Didi Taxi miễn phí
Mã giảm giá Didi Taxi
Giấy chứng nhận ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com