快精灵印艺坊 您身边的文印专家
广州名片 深圳名片 会员卡 贵宾卡 印刷 设计教程
产品展示 在线订购 会员中心 产品模板 设计指南 在线编辑
 首页 名片设计   CorelDRAW   Illustrator   AuotoCAD   Painter   其他软件   Photoshop   Fireworks   Flash  

 » 彩色名片
 » PVC卡
 » 彩色磁性卡
 » 彩页/画册
 » 个性印务
 » 彩色不干胶
 » 明信片
   » 明信片
   » 彩色书签
   » 门挂
 » 其他产品与服务
   » 创业锦囊
   » 办公用品
     » 信封、信纸
     » 便签纸、斜面纸砖
     » 无碳复印纸
   » 海报
   » 大篇幅印刷
     » KT板
     » 海报
     » 横幅

数据库查询结果的动态排序(3)

 为了避免出现这种转变错误,我们可以尝试把ShipperID转变成varchar数据类型。采用这种方式之后,nvarchar将作为最高优先级的数据类型被返回。Listing 3显示了修改后的GetSortedShippers存储过程。


【Listing 3:用列名字作为参数,第二次尝试】


ALTER PROC GetSortedShippers

@ColName AS sysname

AS


SELECT *

FROM Shippers

ORDER BY

CASE @ColName

WHEN \\\'ShipperID\\\'

THEN CAST(ShipperID AS varchar(11))

WHEN \\\'CompanyName\\\'

THEN CompanyName

WHEN \\\'Phone\\\'

THEN Phone

ELSE NULL

END


  现在,假设我们再把三个列名字中的任意一个作为参数调用存储过程,输出结果看起来准确。看起来就象指定的列准确地为查询输出提供了排序标准。但这个表只有三个货主,它们的ID分别是1、2、3。
返回类别: 教程
上一教程: 怎样在ORACLE中导入文本数据
下一教程: SQL优化器探讨

您可以阅读与"数据库查询结果的动态排序(3)"相关的教程:
· 数据库查询结果的动态排序(4)
· 数据库查询结果的动态排序(6)
· 数据库查询结果的动态排序(2)
· 数据库查询结果的动态排序(1)
· 数据库查询结果的动态排序(5)
    微笑服务 优质保证 索取样品