【发布时间】:2017-09-13 02:30:01
【问题描述】:
我有以下基于每周存档创建的表格列表。
dbtable
dbtable_01_04_2017
dbtable_01_07_2017
dbtable_02_09_2017
dbtable_03_06_2017
dbtable_05_08_2017
dbtable_06_05_2017
dbtable_08_04_2017
dbtable_08_07_2017
dbtable_09_09_2017
dbtable_10_06_2017
dbtable_12_08_2017
dbtable_13_05_2017
dbtable_15_04_2017
dbtable_15_07_2017
dbtable_17_06_2017
dbtable_19_08_2017
dbtable_20_05_2017
dbtable_22_04_2017
dbtable_22_07_2017
dbtable_24_06_2017
dbtable_26_08_2017
dbtable_27_05_2017
dbtable_29_04_2017
dbtable_29_07_2017
它们都具有完全相同的列结构:
TIME_STAMP、用户名、信息、原因
我需要使用相同的查询一次查询所有这些,当然只能通过更改下面示例查询中的表名。
SELECT * FROM dbtable WHERE USERNAME="XXXX";
我搜索了一下,希望有一种方法可以在查询中使用通配符名称,但我了解到 SQL 不支持这种方法。
基本上,我正在寻找某种 for 循环来将查询迭代到多个表。
请注意,每周都会根据我们的存档自动化添加新表格。
【问题讨论】:
-
请证明每周的餐桌是合理的。然后我们将尝试解释为什么这样没有优势。