一天一张表,表结构相同,作一个月数据统计,求SQL思路
一天创建一张表,表结构相同;但本人现在要做某一个月的数据统计,要求条件为每一张表中的列名username都等于输入的值!
求SQL语句思路
在线等……求高手们相助,在此谢过!
[解决办法]
用动态的拼接语句
下面给你写个小例子
declare @begin_date DATETIME,@end_time DATETIME ,@col VARCHAR(1000)SELECT @begin_date='2012-08-01',@end_time='2012-08-10',@col='id,name,time'DECLARE @sql VARCHAR(max)WHILE @begin_date<=@end_timeBEGIN SELECT @sql=ISNULL(@sql+CHAR(10)+'union all'+CHAR(10),'')+'select '+@col+' from tb_'+CONVERT(VARCHAR(8),@begin_date,112)SET @begin_date=@begin_date+1END PRINT @sqlEXEC(@sql)
[解决办法]
用动态的拼接语句
下面给你写个小例子
declare @begin_date DATETIME,@end_time DATETIME ,@col VARCHAR(1000)SELECT @begin_date='2012-08-01',@end_time='2012-08-10',@col='id,name,time'DECLARE @sql VARCHAR(max)WHILE @begin_date<=@end_timeBEGIN SELECT @sql=ISNULL(@sql+CHAR(10)+'union all'+CHAR(10),'')+'select '+@col+' from tb_'+CONVERT(VARCHAR(8),@begin_date,112)SET @begin_date=@begin_date+1END PRINT @sqlEXEC(@sql)