易截截图软件、单文件、免安装、纯绿色、仅160KB

帮我看看下面的sql语句 - MS-SQL Server / 基础类

GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [dbo].[Test] 
@sort_expression varchar(255)='Id',
@ascending varchar(20) = 'false'
AS
BEGIN
WITH
  Found AS
(
  select * from tablename
  ),
   
Rows AS
(
SELECT ROW_NUMBER() OVER 
(
ORDER BY CASE WHEN @ascending = 'true' THEN 
CASE @sort_expression
WHEN 'Id' THEN r.id  
WHEN 'Name' THEN r.name 
--WHEN 'Type' THEN r.type 
WHEN 'ExpiryDate'THEN r.expiry_date  
END
END ASC,
CASE WHEN @ascending = 'false' THEN 
CASE @sort_expression
WHEN 'Id' THEN r.id  
WHEN 'Name' THEN r.name 
--WHEN 'Type' THEN r.type 
WHEN 'ExpiryDate'THEN r.expiry_date  
END
END DESC

) AS row_number, r.* from Found r
)

SELECT * from Rows
END

当我运行
exec Test 'id','true'
出错
Error converting data type varchar to float.
应该是在 WHEN 'Name' THEN r.name 这里
name字段类型是nvarchar
请问怎么改
SQL code:
CASE @sort_expression
WHEN 'Id' THEN rtrim(r.id)
WHEN 'Name'


相关问答:

Asp+sql server问题 - Web 开发 / ASP

我一个项目,有个插入操作,具体是这样的:
我有进货信息表。在出货时选择相应的进货信息,输入数量,选择部门后,点保存按钮,由于网络延时,点一下没有反映,于是用户就又点一下,导致一次插入了两条记录:
例: ......

SQL如何优化问题 - MS-SQL Server / 疑难问题

今天做了一个存储过程   环境是SQL2000数据库  
大致如下
建立临时表
定义员工游标
        循环员工(属于1个公司)  
        ......

请教SQLSERVER的两个问题 - MS-SQL Server / 疑难问题

1。怎样使xp_cmdshell能完整输出超过255个字符的字符串。
2。select 时,检索速度是与from后的 TABLE顺序有关,还是与where条件的顺序有关(TABLE数据多少 )
在系统属性设定里有个选项,可以修改单字段输出字数限制. ......

SQL server分解XML - MS-SQL Server / 应用实例

下面是XML初始文件内容
XML code:
<upd:Update xmlns:lar="http://schemas.microsoft.com/msus/2002/12/LogicalApplicabilityRules" xmlns:cmd="http://schemas.microsoft.com/msus/2002/12/Up ......

关于Vb中sql语句的写法(100分) - Java / Web 开发

求个vb中的sql语句的写法,次sql语句的用法是分页程序
我写的如下:其中A是用来接收每页显示的记录的条数,B是用来接收显示的当前的页面.
sqltext="select top A * from log where id not in(select top ( ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号