sqlserver语句从数据类型 nvarchar 转换为 bigint 时出错

建了个视图,运行的时候提示:消息 8114,级别 16,状态 5,第 1 行,从数据类型 nvarchar 转换为 bigint 时出错
SELECT favoritecontacts.conID AS id, favoritecontacts.conName AS name, N'-1' AS parent, N'' AS mobile, favoritecontacts.userID AS userid
FROM dbo.favoritecontacts
UNION
SELECT N'gdmsuser' + CAST(systemuser.userID AS varchar(50)) AS id, systemuser.userName AS name, favoritecontactsuser.conID AS parent, systemuser.mobile AS mobile,
favoritecontacts.userID AS userid
FROM ((dbo.systemuser CROSS JOIN
dbo.favoritecontactsuser) CROSS JOIN
dbo.favoritecontacts)
WHERE ((systemuser.loginName <> 'admin') AND (systemuser.userID = favoritecontactsuser.userID) AND (favoritecontacts.conID = favoritecontactsuser.conID))
哪位高手给帮忙看看是哪里出问题了啊

联合查询需要连接两个表的字段的取值应该一样,你的conID,与第二个.userID AS varchar(50)),两个不是同一个类型,最好变为一致,应该问题是在这里。
温馨提示:答案为网友推荐,仅供参考

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网