gpt4 book ai didi

php - 有没有办法可以查询 mysql 并将 json 数据内部连接在一起?

转载 作者:行者123 更新时间:2023-11-29 21:42:54 26 4
gpt4 key购买 nike

假设我有一个 mysql 表调用用户:

╔════════╦══════════╗
║ Userid ║ Username ║
╠════════╬══════════╣
║ 1 ║ Apple ║
╚════════╩══════════╝

我有一个 json 文件 (1.json):

{
"Desc": "Hi I am apple",
"Age": 10,<br>
}

我怎样才能用 php 进行内部连接来将这两个数据链接在一起

╔════════╦══════════╦═══════════════╦═════╗
║ Userid ║ Username ║ Desc ║ Age ║
╠════════╬══════════╬═══════════════╬═════╣
║ 1 ║ Apple ║ Hi I am apple ║ 10 ║
╚════════╩══════════╩═══════════════╩═════╝

或者是否有更好的方法来构建数据库以供查询?

这样做的原因是,从长远来看,会有很多记录,通过拆分成json和mysql,mysql可以让我轻松地搜索数据,并且只在需要时检索信息。有人可以建议我这是最好的吗?提前致谢!

最佳答案

如果我理解正确,JSON 数据可以是动态的并且具有多个不同的字段。

直接在 SQL/DB 中执行此操作的一种方法是使用名为 Entity-attribute-value model 的方案。例如,wordpress 用于存储自定义动态字段的模型。它提供了很大的灵 active ,但效率不是很高。

另一种方法是直接使用 JSON 数据作为额外字段,例如:

╔════════╦══════════╦══════════════════════════════════════════════════╦
║ Userid ║ Username ║ JSON ║
╠════════╬══════════╬══════════════════════════════════════════════════╬
║ 1 ║ Apple ║ {"Desc":"Hi I am apple","Age":"10"} ║
╚════════╩══════════╩══════════════════════════════════════════════════╩

并查询表(例如使用 username=userage=10 获取用户)

SELECT UserId, UserName FROM Table
WHERE UserName = 'user'
AND JSON LIKE '%"Age":"10"%'

注意,即使是数字值也应该保存在 json 中作为字符串以便统一处理

只要您的 JSON 数据不是复杂或嵌套的,而是简单的键值对并使用LIKE(或REGEX),这也是灵活的) 子句可以是高效的

(ps这种方法也被使用,例如,wordpress,使用php序列化数据而不是JSON数据,但相同的区别)

关于php - 有没有办法可以查询 mysql 并将 json 数据内部连接在一起?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34349231/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com