sql - SQL - 字母数字排序
问题描述
我有一个 SQL 中的部门表,我正在尝试按字母数字排序。这是我想出的以下语法:
SELECT DeptAbbreviation FROM [JBSIS_Odyssey].[VW_Probate_Courthouse_Department] ORDER BY LEFT(DeptAbbreviation,PATINDEX('%[0-9]%',DeptAbbreviation)-1), CONVERT(INT,SUBSTRING(DeptAbbreviation,PATINDEX('%[0-9]%',DeptAbbreviation),LEN(DeptAbbreviation)))
它给了我一条错误消息,上面写着:传递给 LEFT 或 SUBSTRING 函数的长度参数无效。
我怀疑这是因为我有一个值:ST2D,字符之间的数字。
我现有的代码有什么解决方案吗,谢谢
解决方案
推荐阅读
- javascript - 初次访问介绍
- git - git pull 会替换我本地存储库中的所有内容吗?
- c - 为什么当我在 C 中打印二维数组时,它会重复结果?
- node.js - 如何同步 Node js 应用程序、git 和 Heroku?
- xml - 如何使用 FLWOR 计算 XML 文件中的特定元素?
- neo4j - 如何查找和删除存在两个给定关系的节点?
- android-studio - 我无法弄清楚我的 Kotlin 代码中的问题?
- javascript - 我该如何解决这个错误?“TypeError:无法读取未定义的属性‘文件’”
- r - 如何用从同一列推算的值替换列中的缺失值?
- java - 即使禁用 csrf,Spring 安全性 403 禁止错误也会不断发生