请教如何使用变量来做字段名称

Gorgeousmatchless 2016-12-20 03:48:36
因为在做进销存表,所以每日早上需要往数据库里导入一份截止前一天24点的进销存明细。
因为想让列显示几月几号销量,几月几号库存,所以想每次导入表格的时候让数据库自动带上前一天的日期。
目前已经知道如何获取操作数据库前一天的日期,但是如何将这个变量当成列名来写入表格还是不会。
请各位数据库大牛帮帮忙,不胜感激。
获取前一天日期的方式是:
declare @date varchar(10)
set @date = RIGHT(CONVERT(varchar(10),GETDATE()-1,2),5)

想实现的效果是:
商品名称 12.13销售数量 12.13采购数量 12.13库存数量 12.14销售数量 12.14采购数量 12.14库存数量
苹果手机 20 25 5 15 10 0
...全文
527 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
试一下  这种思路
SELECT @col=ISNULL(@col+N',[','[')+@date+N'销售数量],['+@date+N'采购数量],['+@date+N'库存数量]' FROM  TABLE1
SET @SQL= 'SELECT * FROM T1 
PIVOT(MAX(v) FOR t IN ('+@col+')) p'
EXEC (@SQL)
Mr_Nice 2016-12-20
  • 打赏
  • 举报
回复
参考看一下 列转行

27,580

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧