php - MySQL:如何插入到 JSON 中间

标签 php mysql json

假设我将 JSON 作为 JSON 类型存储在 MySQL 中:

{"key1":"value1","key3":"value3","key2":"value2"}

我想在特定位置插入“key4”:“value4”,例如:

{"key1":"value1",   "key4":"value4"   ,"key3":"value3","key2":"value2"}

是否有纯粹的 MySQL 命令来执行此操作?

JSON_INSERT 看起来只能附加到 JSON。

我宁愿将其作为 MySQL 命令来保持高效,否则,我必须将整个 JSON 字符串拉出来,对其进行解码,执行一些 PHP 命令,然后恢复它。似乎应该有一种 MySQL 的方式来表示将其放在索引 2 左右。

如有任何指导,我们将不胜感激。

最佳答案

我建议您使用 JSON 数组进行序列。这是一个例子:

var a = [{key1: "va1"},{key1: "val2"}];

然后您将使用 splice() 推送 JSON 数组内的特定索引。 Splice() 是一个 JavaScript 函数。

a.splice(1, 0, {key1: 'adipiscing'});

尝试运行下面的代码片段:(顺便说一句,我正在使用 AngularJs)

<div ng-app="myApp" ng-controller="myCtrl">
    {{text}}
    </div>

    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.4/angular.min.js"></script>
    <script>
    var app = angular.module('myApp', []);
            app.controller('myCtrl', function ($scope) {
	      var a = [{key1: "jp"},{key1: "id"}]
              a.splice(1, 0, {key1: 'adipiscing'})
              $scope.text = a;
            });
    </script>

关于php - MySQL:如何插入到 JSON 中间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45069767/

相关文章:

asp.net - '/' 应用程序中的服务器错误 [不知道这样的主机]

json - Play json 写入子类给出不明确的隐含值错误

ruby-on-rails - 如何使用 Rabl 读取 "order by id "JSON

mysql - 导入 .csv 并转换为 mysql 中的日期

mysql - bash循环mysql输出多个变量

php - Retrofit2 错误 : java. lang.IllegalStateException:应为 BEGIN_OBJECT 但在第 1 行第 1 列路径 $

php - 数组提取方法的优缺点

php - 在 codeigniter 中添加两个不同的查询

php - wamp 的 SQL Server 由于 Avast 被阻止

php - document.ready 页面重新加载