sql 中 将nvarchar 转成int

select m.menuTitle from dbo.sys_Menus m where m.menuID in
(select gm.menu_IDS from dbo.sys_GroupAndMenu gm where gm.GroupID=3
)

消息 245,级别 16,状态 1,第 1 行
在将 varchar 值 '1,7,8,9,10' 转换成数据类型 int 时失败。
最新回答
迷糊的小九

2025-03-26 10:47:25

int类型的值不能与不能直接转换为int类型的值匹配,不然就报这个错1,7,8这个显然不是一个int类型的值
select m.menuTitle from dbo.sys_Menus m where (select ','+gm.menu_IDS+',' from dbo.sys_GroupAndMenu gm where gm.GroupID=3
) like '%,'+convert(varchar, m.menuID)+',%'
じ○Ve→三妻四妾

2025-03-26 03:21:38

有逗号 不行

‘1’ 可以转

'1,7' 就不行 有逗号