ORDER BY CASE表达式出现“转换失败”错误
当我将“ OrderBy”设置为“ OrderNumber”时,以下存储过程可以很好地发挥作用。 我收到以下错误:将nvarchar值'SK11270'转换为数据类型int时转换失败。 (SK11270是OrderNumber列中的值,为nvarchar(50)) 如果我对任何其他OrderBy列运行相同的查询,则工作正常。 我完全迷路了,我的头很痛。谁能看到任何明显的原因会导致此问题? 预先感谢您的任何想法... 丰富 这有效: sp_jobs '1','20','','JobNumber','ASC','97','True','True','True','True','True','True','True','True','True','False','True','False','True','False','0' 这不是: sp_jobs '1','20','','OrderNumber','ASC','97','True','True','True','True','True','True','True','True','True','False','True','False','True','False','0' PROCEDURE [dbo].[sp_Jobs] @PageNumber int, @PageSize int, @FilterExpression varchar(500), @OrderBy varchar(50), @OrderDirection varchar(50), @CustomerID int, @ShowNotSet bit, @ShowPlaced bit, @ShowProofed bit, @ShowReProofed bit, @ShowApproved bit, @ShowOnTime bit, @ShowLate bit, @ShowProblem bit, @ShowCompleted bit, @ShowDispatched bit, @ShowUnapproved …