我正在研究一个不是财产设计的过时数据仓库。不幸的是,由于一些限制,我无法重新设计整个数据库,因此我正在使用多个表来保存特定年份的信息。我需要一次查询 3 个表(每年的今天日期为 3 个不同的年份)。有没有办法在不知道运行时使用的表的情况下创建这个查询?我正在尝试在实体框架中执行此操作,因为应用程序正在移植到 ASP.NET MVC 3,但我只在表是静态的时候使用实体框架。
下面是我正在使用的表结构的示例。
表:
INFO2008
INFO2009
INFO2010
INFO2011
INFO2012
所有表格都使用相同的表格设计:
ID (INT)
FirstName (VARCHAR)
LastName (VARCHAR)
ZipCode (VARCHAR)
Date (DATETIME)
现在,如果我今天的日期是 2012 年 1 月 1 日,我需要一个查询,该查询将从 INFO2012 中提取 2012 年 1 月 1 日的所有行数,从 INFO2011 中提取 2011 年 1 月 1 日和 2010 年 1 月 1 日从信息 2010。每个表只保存当年的记录列表。所以表名(带年份)需要在运行时动态计算出来。