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

Can we filter data stored in JSON?

我正在创建一个类似 medium 的网站。由于我是 web 开发的新手,我正在使用 php ajax 和 mysql 数据库,并以 JSON 格式存储用户的帖子。 Click to see database structure。 标题和说明在 JSON 内。我的问题是:-

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

感谢您的帮助:)

“你能”- 是的。 你应该

您将需要 几个 相关 tables,至少 articlescommentsusers 并且可能更多,因为您还希望将附件存储在不同的 table 中。 通常 JSON 不应用于您希望 search/index 的数据。更多便利店。

示例 table 结构。这是为了让“果汁流动”和“为您指明正确的方向”,它应该逐字记录并变成生产数据库。

如果您使用以下内容,如果您想搜索包含单词“猫”的文章,您只需使用

SELECT * FROM articles WHERE content like '%cats%';

文章

column name column type
id int, autoincrement
title varchar(255)
content text
created_by int, Foreign Key users.id
created_on datetime, default now
last_updated_by int, Foreign Key users.id
last_updated_on datetime, default now, change on update

评论

column name column type
id int, autoincrement
article_id int, Foreign Key articles.id
content text
created_by int, Foreign Key users.id
created_on datetime, default now
last_updated_by int, Foreign Key users.id
last_updated_on datetime, default now, change on update

用户

column name column type
id int, autoincrement
name varchar(255)
username varchar(255)
email text
password varchar(255) STORE HASHES NOT PLAINTEXT
created_on datetime, default now