嗨,我有一个程序,它根据我通过的年份使用表名。如何在 sproc 中使用它?
例如:tables_2000
,
tables_2001
,...
只是要把它扔出去以帮助解决糟糕的模式设计。
创建一个视图,然后根据年份在视图上执行 where 子句
SELECT 2000 AS Year, *
FROM tables_2000
UNION
SELECT 2001 AS Year, *
FROM tables_2001
UNION
SELECT 2002 AS Year, *
FROM tables_2002
UNION
...etc
这假设所有 tables_20XX 具有相同的架构。
您可能可以使用动态 sql 更有效地执行此操作,但您尚未在标签或问题中指定您的 sql 供应商。