如何解决我们可以过滤存储在 JSON 中的数据吗?
我正在创建一个类似 medium 的网站。由于我是 Web 开发的新手,我将 PHP ajax 与 MysqL 数据库一起使用,并以 JSON 格式存储用户的帖子。 Click to see database structure。 标题和描述在 JSON 中。我的问题是:-
- 如何在用户在搜索栏中输入标题时搜索帖子。
- 点赞和评论是否应该存储在同一个 JSON 文件中(多个用户可以同时评论)?
- 不同的帖子有不同的 JSON 标题和描述会显示在谷歌搜索上吗?
- 我应该如何存储大数据,例如:- 标题、描述、喜欢、评论,以便我可以轻松地从搜索输入中过滤。
感谢您的帮助:)
解决方法
“你能吗” - 是的。 你应该不。
您将需要几个相关表,最少 articles
、comments
、users
和可能更多,因为您还需要将附件存储在不同的表中。 通常 JSON 不应用于您希望搜索/索引的数据。更多商店以方便。
示例表结构。这是为了让“果汁流动”和“为您指明正确的方向”,它应该不逐字逐句地转化为生产数据库。
如果您使用以下内容,如果您想搜索包含“cats”一词的文章,您只需使用
SELECT * FROM articles WHERE content like '%cats%';
文章
列名 | 列类型 |
---|---|
id |
int ,autoincrement
|
标题 | varchar(255) |
内容 | text |
created_by |
int ,外键 users.id
|
created_on |
datetime ,现在默认 |
last_updated_by |
int ,外键 users.id
|
last_updated_on |
datetime ,现在默认,更新时更改 |
评论
列名 | 列类型 |
---|---|
id |
int ,autoincrement
|
article_id |
int ,外键 articles.id
|
内容 | text |
created_by |
int ,外键 users.id
|
created_on |
datetime ,现在默认 |
last_updated_by |
int ,外键 users.id
|
last_updated_on |
datetime ,现在默认,更新时更改 |
用户
列名 | 列类型 |
---|---|
id |
int ,autoincrement
|
名称 | varchar(255) |
用户名 | varchar(255) |
电子邮件 | text |
密码 |
varchar(255) 存储哈希非明文
|
created_on |
datetime ,现在默认 |
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。