我正在使用此脚本
select * from mxiv_sentries where
attrname='mskeyvalue' and mskey in
(select mskey from mxiv_sentries where attrname='MXREF_MX_PRIVILEGE' and searchvalue='672081'
and mskey not in
(select Default_login from mxman_rt_u.VPN))
这是两个不同的表,其中Default_login是字母数字,varchar和mskey是INT中的数字。因此,当我执行此脚本时,我最终会收到错误:
Msg 245,Level 16,State 1,Line 1转换时转换失败 varchar值'A15271'到数据类型int。
您能否建议如何获得正确的结果 感谢
答案 0 :(得分:5)
'A15271'
表中的Default_Login
字段中显然有VPN
的值。
如果这是varchar
,您需要
CAST
int
作为Varchar
。这将有一些开销,可能会使您的索引没有实际意义,但在像这样的查询中,这样的结构甚至可能不存在索引。