sql - 从多个数据库查询数据

标签 sql sql-server

我的系统中每天都会添加动态数据库。

名称始终遵循以下模式:

NAME_YYYYMMDD1200

里面的表格是一样的。

如何查询 myTable 数据库最近 5 天的 [SELECT 语句] 所有列?

例如,如果今天是 2013 年 10 月 10 日,我会查询 myTable 的所有列以查找这些数据库:

NAME_201310101200
NAME_201310091200
NAME_201310081200
NAME_201310071200
NAME_201310061200

我尝试 SELECT * FROM NAME_*.myTable 但显然不起作用。

如何动态/动态构建 [SELECT] 查询数据库名称?

谢谢

最佳答案

您可以在每个数据库 sp_msForEachDb 中执行查询.

您可以像这样过滤数据库:

EXEC sp_MSforeachdb
@command1='IF ''?''
IN (''AdventureWorks2012'',''AdventureWorks2012_test'')
BEGIN
       select * from [?].sys.schemas
END'

关于sql - 从多个数据库查询数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24573182/

相关文章:

sql - Postgresql 9.1 的 Unaccent 扩展返回空行

php - 搜索数据库的用户界面

mysql - php中的联合SQL查询

sql-server - 从R将Unicode写入SQL Server

sql-server - freebcp 因大量数据而停滞不前

sql - 为什么以及何时应该使用稀疏列? (SQL 服务器 2008)

asp.net - 简单排序的问题。我应该修复数据库还是代码?

mysql - PHP 中的 SQL SUM 行

sql-server - 如何在 SQLCMD 中抑制连字符

mysql - 如果不存在查询,则在 mysql 上创建返回 id