mysql - MySQL 在表名中使用通配符
问题描述
所以我有一个软件可以在这些表上存储数据。我知道这些表是如何开始的,但是它们总会有一个后缀,这是一个我不知道的数字,这些表名的示例是"itemid5_4423"
我知道有一个名为 itemid5 的表,但我无法知道后缀号是否有类似于此逻辑的通配符select * from itemid5_*;
解决方案
SELECT
REPLACE
(
GROUP_CONCAT(
CONCAT("SELECT * FROM ", `TABLE_NAME`)
),
",",
" UNION ALL "
)
INTO @sq
FROM
information_schema.tables
WHERE
`TABLE_SCHEMA` = "test";
USE
test;
PREPARE
stmt1
FROM
@sq;
EXECUTE
stmt1;
推荐阅读
- vba - 如何阻止 DoCmd.OutputTo 打印文件?
- python - 为什么 __bases__ 不能在类主体中访问?
- angular - 无法解析 'core-js/client/shim - 将 Angular 从 v6 升级到 v7
- oauth - 超过 15 天以来,我没有收到关于 GoogleAPI OAuth 开发人员验证请求的任何反馈。我如何联系验证团队?
- delphi - 如何使用 Delphi 检测 Windows 10 是否处于平板电脑模式?
- mysql - 如何重置 Liferay?(删除所有内容/用户/自定义)
- java - 致命异常:与 java.lang.NoClassDefFoundError 相关的 AsyncTask #1
- uwp - 将焦点一一移动到 GridView 项目上
- javascript - JS数据过滤器和组不正确
- vuejs2 - VueJs "global" event not being triggered inside my class file