首页 > 解决方案 > 将 json 数据插入 mysql 表文件 JSON 数据包含的键比我的 mysql 表中的键多

问题描述

我有 JSON 数组。其中一些 json 键包含 mysql 表列或一些不在我的表中。

我正在像这样在 PHP 中创建查询:

$fields_query = $fields_query . strtoupper("$key") . " ,";
$values_query = $values_query . "'" . $value . "'" . " ,";

如何删除不在我的表中的 json 数据?

标签: phpmysqljson

解决方案


您可以按照下面给出的步骤

  1. $column_names如链接https://www.codexworld.com/how-to/get-column-names-from-table-in-mysql-php/中所述,获取数组中表的列名
  2. 现在,json_decode()在另一个数组中获取 JSON 数据$data。记得提取关联数组。
  3. 声明另一个数组$saveArray = [];
  4. 从数组中删除您不想成为插入查询一部分的列$column_names。您可以为此目的使用array_search()和函数。unset()
  5. 首先遍历 array $data
  6. 在上一步的循环内有另一个 for 循环。这个 for 循环将遍历数组$column_names
  7. 现在只需使用最内层循环中的可用列名从父 for 循环中可用的 $data 的数据行中提取其值。
  8. 您只需要为每个数据行准备一个最终插入查询。
  9. 运行查询!

如果这些步骤对您有帮助,请告诉我。


推荐阅读