小编Luk*_*sák的帖子

SQL Server - 将数据类型 nvarchar 转换为 bigint 时出错

当我运行以下查询时,SELECT *我收到错误消息:

[S0005][8114] 将数据类型 nvarchar 转换为 bigint 时出错。

SELECT * FROM (
                SELECT * , ROW_NUMBER() OVER (ORDER BY CAST(id as BIGINT)) AS RowNum
                FROM users
            ) AS users
            WHERE users.RowNum BETWEEN 0 AND 5 ;
Run Code Online (Sandbox Code Playgroud)

当我运行此查询时,SELECT id , ROW_NUMBER() ...一切正常。

我的数据库看起来像这样:

数据库图片

此查询与id列所在的其他表运行良好NVARCHAR

ID 列仅是数字,如果我将其转换为:CAST(id as NVARCHAR),则会出现相同的错误。

编辑:

我发现列 ID 值有问题

身份证 46903836 身份证 9100000004

小 ID 没有前导零

sql sql-server

2
推荐指数
1
解决办法
5万
查看次数

标签 统计

sql ×1

sql-server ×1