假设我将 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/