sql语句小问题!

kevin87923 kevin87923 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区

CREATE TABLE [dbo].[Wound](
[WoundID] [int] IDENTITY(1,1) NOT NULL,
[Winding] [varchar](50) NULL,
[Laps] [varchar](50) NULL,
[Wire] [varchar](50) NULL,
[RootNumber] [varchar](50) NULL,
[Pin] [varchar](50) NULL,
[RoutingI] [varchar](200) NULL,
[ELaps] [varchar](200) NULL,
[Skeleton_Pin] [varchar](20) NULL,
[Inductance] [varchar](10) NULL,
[C_Res] [varchar](10) NULL,
[Saturated] [varchar](10) NULL,
[T_Leakage] [varchar](10) NULL,
[TF_ID] [int] NULL,
CONSTRAINT [PK_Wound] PRIMARY KEY CLUSTERED
(
[WoundID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO

declare @sql Nvarchar(2000)
set @sql='select TF_ID '
select @sql=@sql+', max(case when Winding='''+CAST(Winding as nvarchar(10))+''' then cast(Laps as INT) else 0 end) as ['+CAST(Winding as varchar(10))+',Laps],
max(case when Winding='''+CAST(Winding as nvarchar(10))+''' then cast(Wire as varchar(10)) else null end) as ['+CAST(Winding as varchar(10))+',Wire],
max(case when Winding='''+CAST(Winding as nvarchar(10))+''' then cast(Inductance as varchar(10)) else null end) as ['+CAST(Winding as varchar(10))+',Inductance],
max(case when Winding='''+CAST(Winding as nvarchar(10))+''' then cast(C_Res as varchar(10)) else null end) as ['+CAST(Winding as varchar(10))+',C_Res],
max(case when Winding='''+CAST(Winding as nvarchar(10))+''' then cast(Saturated as varchar(10)) else null end) as ['+CAST(Winding as varchar(10))+',Saturated]'

from (select DISTINCT Winding from wound b ) as t
set @sql=@sql+'from wound b,Transformer a GROUP BY TF_ID'
exec (@sql)


在本机可以执行。但放在另外一台机子上就出错。都是sql2008的。
‘)’附近有语法错误
...全文

相关推荐

评论 12
收藏 已收藏
分享
返回顶部
kevin87923
MS-SQL Server 34,876 成员 254,635 内容