【发布时间】:2013-11-05 20:37:10
【问题描述】:
尝试使用此查询:
SELECT clientId,
CountryCode
FROM client
ORDER BY
CASE
WHEN CountryCode IS NULL
THEN clientId
ELSE CountryCode
END
但收到错误消息:
消息 8115,第 16 级,状态 5,第 1 行
将数值转换为数据类型 varchar 时出现算术溢出错误。
表结构为:
ClientId numeric(10,0)
CountryCode char(3)
【问题讨论】:
-
您希望所有带有 CountryCode 的记录都排在第一位吗?数据是什么样的?
-
请给出示例预期输出。现在看起来您正在尝试完成一些没有意义的事情,因为数字将排序在字母国家代码之上。
-
ORDER BY CountryCode, clientID还不够吗?
标签: sql sql-server sql-order-by