假设my_database有类似于表的tbl1 tbl2 tbl3
我想使用来自JSON_ARRAY的表名来创建一个my_database
我试过:
SET @bd = 'my_database';
SELECT GROUP_CONCAT(DISTINCT TABLE_NAME) INTO @my_tables
FROM INFORMATION_SCHEMA.TABLES 
WHERE TABLE_SCHEMA = @bd;
SELECT JSON_ARRAY(@my_tables);但我有一个元素数组
+-------------------+
| @my_tables         |
+-------------------+
| ["tbl1,tbl2,tbl3"] |
+-------------------+我在找["tbl1","tbl2","tbl3"]
发布于 2022-10-14 20:26:42
SELECT JSON_ARRAYAGG(TABLE_NAME) INTO @my_tables
FROM INFORMATION_SCHEMA.TABLES 
WHERE TABLE_SCHEMA = @bd;在这个查询中不需要使用DISTINCT,因为TABLE_NAME在特定模式中是唯一的。
JSON_ARRAYAGG()需要MySQL 5.7.22或更高版本。如果您有一个旧版本的MySQL,是时候升级了。
https://stackoverflow.com/questions/74074465
复制相似问题