日期:2014-05-17  浏览次数:20750 次

SELECT查询语句可否将表名设置为变量
数据库中每个月增加一张表,表名基本上按月份命名,
现需要一个页面,在随时查询表名为上个月的表,
请问是否有方法可以SELECT   *   FROM   变量     这个变量得出上月的月份?

------解决方案--------------------
可以的
sql = "SELECT * FROM " & 变量
Set rs = cn.Execute(sql)
------解决方案--------------------
sql = "SELECT * FROM [ " & 变量 & "] "
------解决方案--------------------
可以.
declare @tb varchar(50)
set @tb= 'tbname '
exec ( 'select * from '+@tb)
------解决方案--------------------
我觉得楼主要问的不是上面三位回答的内容,要不这个问题也太简单了??楼主可否在说清楚些?
------解决方案--------------------
TableName = Month-1& "月帐单 "

Select * From "& TableName & "
------解决方案--------------------
刚起床,头脑还不清醒,呵呵,要考虑1月份的上月是上年的12月!呵呵

TableName = DatePart( "m ",DateAdd( "m ",-1,Date))& "月帐单 "

Select * From "& TableName & "

------解决方案--------------------
这也太简单了吧,你可以试一下呀
------解决方案--------------------
只要是有规律的表名就好办

TableName = Month(Now())-1& "月帐单 "

Select * From [ "& TableName & "] "

------解决方案--------------------
同上,用字符串构造出SQL语句就OK
------解决方案--------------------
lz结帖.
------解决方案--------------------
表名字段名都可以是变量
------解决方案--------------------
是可以的。这个我用过的。