美文网首页
[原创]c# sql 其它表username字符串表含字符和整数

[原创]c# sql 其它表username字符串表含字符和整数

作者: 吉凶以情迁 | 来源:发表于2023-03-23 09:09 被阅读0次

    a表有userid, nickname userid存了用户名也存了用户id,不按规范存档
    b表USER_ID是数值 33
    b表username是字母 如 lozn

    a表userid既有 33也有lozn,同时进行转换为昵称 的办法

    
    
    select b.NICK_NAME,
       
          from BizTable a   left join UserTable b on  
           (ISNULL(TRY_CAST(a.userid AS INT), -1)=-1 and  b.username= a.userid)
           or
            ( ISNULL(TRY_CAST(a.userid AS INT), -1)<>-1 and   b.USER_ID = TRY_CAST(a.userid AS INT))
    
    

    刚开始我是直接判断TRY_CAST(a.userid AS INT)=NULL发现并不能解决问题
    也试过

      CASE WHEN ISNUMERIC(a.aa) = 1 AND TRY_CAST(a.bb AS INT) IS NOT NULL
                THEN b.USER_ID
                ELSE b.USER_NAME
           END AS [xx],
    
    

    发现并不能解决问题而且依然抛出抛出转换字符串成数据类型 int 时失败

    相关文章

      网友评论

          本文标题:[原创]c# sql 其它表username字符串表含字符和整数

          本文链接:https://www.haomeiwen.com/subject/dxrmrdtx.html