我正在尝试查询具有奇怪手动分区方案的数据库。数据库有一个分区表定义为:
CREATE TABLE [dbo].[partitions](
[pname] [varchar](255) NULL,
[drvid] [int] NULL,
[start_time] [bigint] NULL,
[end_time] [bigint] NULL,
[blocksize] [int] NULL,
[flags] [int] NULL
)
然后在这个表中驻留了几个具有表名的同一个表。
(sql_data_1_2014_05, sql_data_1_2014_06, etc.)
所以我希望能够编写一个视图,将所有表与一个联合组合在一起,但我不知道如何从分区表中提取表名并在我的查询中使用它......所以有点像下面,但在一个循环中拉表名称我们的分区表。
SELECT
....
FROM dbo.sql_data_1_2014_05
UNION ALL
SELECT
....
FROM dbo.sql_data_1_2014_05
另外我什至不知道这是否是最快/最有效的方法。这些表非常大,因此对它们进行了分区。任何指针/想法?