gpt4 book ai didi

sql - 如何在可能包含按字母顺序排列的数字的 varchar 字段上排序?

转载 作者:行者123 更新时间:2023-12-04 21:38:23 41 4
gpt4 key购买 nike

我确信这一定是一个很常见的问题,所以我猜微软已经解决了这个问题。我的谷歌搜索技术还达不到标准。我有一个要排序的字段,它是一个 varchar 字段,例如

  • 数字 10
  • 数字 1
  • 一个
  • 数字 9
  • 数字 2
  • F

现在我希望结果是

  • 一个
  • F
  • 数字 1
  • 数字 2
  • 数字 9
  • 数字 10

但事实并非如此。如下(注意 Num 10 出现在 Num 1 之后,而不是预期的 Num 9)

  • 一个
  • F
  • 数字 1
  • 数字 10
  • 数字 2
  • 数字 9

现在我知道了这个原因,所以你不需要解释 :) 但我不记得如何解决它,或者是否有一个很好的标志或命令我可以用来让它正确。

编辑:

上面的例子只是一个例子。该列可以包含任何值。字母和数字的任意组合。有没有一种方法可以按字母顺序而不是按字母顺序对 ASCII 值进行排序?

编辑 2:感谢您到目前为止的回答。我说的是任何任意数据。如果它处于固定位置或前面有某物,那么它会很容易,我也不会问。我要求使用任何任意数据来解决此问题的一般解决方案。没有模式,没有规则,什么都没有。

最佳答案

这是 Ascii 排序顺序与自然排序顺序的老问题

参见 Sorting for Humans : Natural Sort Order了解更多详情。

关于sql - 如何在可能包含按字母顺序排列的数字的 varchar 字段上排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2052118/

41 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com