将 varchar 值“[field]”转换为数据类型 int 时转换失败


Conversion failed when converting the varchar value '[field]' to data type int

我正在创建一个智能列表,以便更好地查看报告。

我的问题是,当 im 生成下面的查询时,它失败并显示此错误消息"将 varchar 值'Field2'转换为数据类型 int 时转换失败"。

这是我的查询

SELECT * FROM (SELECT *, ROW_NUMBER() OVER (ORDER BY [SECCODE]) AS RowNumber 
FROM myDB.mySchema.myView 
WHERE [Field1]<[Field2]) tempTable WHERE [tempTable].[RowNumber]>=1 AND [tempTable].[RowNumber]<=100

字段 2 来自文本框。我尝试输入确切的字段名称,但仍然收到错误。

请帮忙。提前谢谢。

declare @v1 varchar(20);
select cast(@v1 as int)..

SELECT * FROM (SELECT *, ROW_NUMBER() OVER (ORDER BY [SECCODE]) AS RowNumber 
FROM myDB.mySchema.myView 
WHERE [Field1]<cast([Field2] as int) tempTable WHERE [tempTable].[RowNumber]>=1 AND [tempTable].[RowNumber]<=100

您是否尝试过使用 castconvert


cast(varcharColumn as Int)CONVERT(INT, varcharColumn)