【发布时间】:2018-09-25 10:53:08
【问题描述】:
我已经浏览了大量的 mysql 视图示例,所以我猜测我想要做的事情可能是不可能的。
我有多个数据库:db1、db2、db3 ....... 每个都有一个表:引号 相同表中的列:DateSubmitted DATETIME、TimeFinished DATETIME、Status VARCHAR(64)
我正在尝试获取一个视图,以便在添加新数据库时创建或重新创建,该数据库可以根据状态(错误、超时、成功)在 DateSubmitted 和 TimeFinished 之间进行一些计算
我正在寻找的结果是这样的:
Database|AvgTimeLast24Hours|AvgTimeLastWeek|AvgTimeLastMonth
|db1|60|48 | 40 |
| db2 | 185 | 125 | 105
|db3 | 14 | 18 | 23 |
平均列将在几分钟内,我有查询来获取计算,但是当我尝试将其放入视图时,我知道我做错了。
有人有例子吗?
【问题讨论】:
-
"我有多个数据库:db1、db2、db3 .......每个都有一个表:引号相同表中的列:DateSubmitted DATETIME、TimeFinished DATETIME、Status VARCHAR(64)" Wierd现在设计导致您出现问题的原因.. 您可以做的是使用 information_schema.TABLES 并生成动态(使用联合所有)SQL并使用 PREPARE 和 EXECUTE 执行它我认为这是一个比制作视图更好的选择。
-
谢谢@RaymondNijland,我现在正在做类似的事情。我希望创建视图,以便其性能优于所有单个查询。