数组是json_encoded并存储在另一个表中。现在我想用MERGE类型创建一个mysql View,并将json_decode数组编入View的列。这可能吗?如果是,怎么样?
答案 0 :(得分:1)
如果你打算不在数据库中做那些东西而只是使用PHP,那将很容易。您只需选择编码数组,对其进行解码,将其解析为列(或任何有效的SQL),将其存储在字符串中并执行此SQL字符串,而不是您想要的。
$sql_array = 'select json_array from tbl';
//use mysql-query/fetch/execute whatever to get your data
//use json_encode to get your PHP $columns = array()
$columns = json_encode(...);
$sql_cols = 'select null';
//iterate through your PHP array()
foreach($columns as $column) {
//make the row-value to columns
$sql_cols .= ', '.$column;
}
$sql_cols .= ' from tbl';
//use mysql-query/fetch/execute whatever to get your data
这应该这样做。