我正在尝试在表之间传输数据。
并尝试了此操作:
/etc/httpd/conf/extra/http-vhosts.conf
这给了我一个错误:
INSERT INTO
movies (titles)
SELECT
'{ "en": title_english, "de": title_german}'
FROM movies_old;
看起来我可以在SELECT子句中使用concat:
Error Code: 3140. Invalid JSON text: "Invalid value."
但是想知道是否会有更自然的方法。
答案 0 :(得分:0)
我认为您正在寻找这个
SELECT JSON_OBJECT('en',`title_english`, 'de', `title_german`) FROM movies_old;
答案 1 :(得分:0)
使用JSON_OBJECT
:https://dev.mysql.com/doc/refman/5.7/en/json-creation-functions.html
例如:
SELECT JSON_OBJECT('id', 87, 'name', 'carrot');
会产生:
{"id": 87, "name": "carrot"}
因此您的查询如下:
INSERT INTO
movies (titles)
SELECT JSON_OBJECT('en', title_english, 'de', title_german)
FROM movies_old;