【发布时间】:2015-09-11 11:54:13
【问题描述】:
我有一个 MySQL 数据库,它有两个字段。第一个字段名为postValues,另一个字段名为username。我数据库所有记录的用户名是null。
在postValues 字段内有一个 JSON 字符串。
在这个 JSON 字符串中可能有一个键 username。
{
otherfields,
"username": "George",
otherfields
}
username 也有可能不存在。
如果 JSON 字符串中存在键 username,我需要使用 SQL 查询检查数据库的每条记录,如果存在,则将其保存到字段 username 的同一记录中。请注意,otherfields 与每条记录都不相同,而且键 username 可能不在同一位置以从 JSON 字符串中获取 substr。我想我需要一个正则表达式。
谁能指导我。
【问题讨论】:
-
使用任何脚本语言来实现这一点。首先从数据库中读取 postValue 并对其进行 json_decode 并从中获取用户名密钥并检查用户名是否存在于数据库中,插入它否则更新它
-
我的建议是在修复过去之前先修复未来。换句话说,首先修复向您发送数据的应用程序。然后你只需要更新一次。
-
@TamilSelvan 我已经在做这个了,但是它花费的时间太长了,我可能需要在上线之前做几次测试。所以我想可能有更快的方法。
-
哦,这是测试。优秀的。修复向您发送数据的应用程序,以便在插入记录之前解析出用户名。
-
@DanBracuk 请...这不是一个选项。有几个应用程序发送数据,这些应用程序是外部应用程序,无法更新。这是一个实时的应用程序,但我需要在更新实时数据库之前进行测试以测试数据库。该值将从现在开始直接保存。由于各种原因,我必须一遍又一遍地进行测试,这个过程需要很多时间。我希望有一个查询可以节省我一些时间。