【发布时间】:2010-11-26 13:06:15
【问题描述】:
在 SQL CE(精简版)3.5 版中对字母数字字段进行排序
TreeNumber 是一个 nvarchar 字段,其中包含值的数字和字符串。我想对这些记录进行排序,使包含字母字符的记录在顶部,其余的按数字顺序排序。
我想要类似于以下在 SQL Server 中工作的查询:
SELECT * FROM Tree
ORDER BY
(CASE WHEN TreeNumber LIKE '%[a-z]%' THEN 0 ELSE TreeNumber END), TreeNumber
上述查询似乎不起作用,因为 CE 不支持 [] 范围。下面是另一种适用于 SQL Server 但不适用于 CE 的解决方案,因为不支持“IsNumber()”:
SELECT * FROM Tree
ORDER BY
(CASE IsNumeric(TreeNumber) WHEN 0 THEN 0 ELSE TreeNumber END), TreeNumber
【问题讨论】:
标签: sorting sql-order-by sql-server-ce alphanumeric