微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

我们可以过滤存储在 JSON 中的数据吗?

如何解决我们可以过滤存储在 JSON 中的数据吗?

我正在创建一个类似 medium 的网站。由于我是 Web 开发的新手,我将 PHP ajax 与 MysqL 数据库一起使用,并以 JSON 格式存储用户的帖子。 Click to see database structure标题和描述在 JSON 中。我的问题是:-

  1. 如何在用户搜索栏中输入标题搜索帖子。
  2. 点赞和评论是否应该存储在同一个 JSON 文件中(多个用户可以同时评论)?
  3. 不同的帖子有不同的 JSON 标题和描述会显示在谷歌搜索上吗?
  4. 我应该如何存储大数据,例如:- 标题、描述、喜欢、评论,以便我可以轻松地从搜索输入中过滤。

感谢您的帮助:)

解决方法

“你能吗” - 是的。 你应该不。

您将需要几个相关表,最少 articlescommentsusers 和可能更多,因为您还需要将附件存储在不同的表中。 通常 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 举报,一经查实,本站将立刻删除。