相关文章推荐
冷冷的春卷  ·  AudioTimestamp.FramePo ...·  3 月前    · 
可爱的可乐  ·  Noto Sans Mono: ...·  1 年前    · 
含蓄的自行车  ·  java ...·  1 年前    · 

我想按下面显示的顺序对它们进行排序(数字1-12):

1个 2 3 4 5 6 7 8 9 10 11 12 但是,我的查询-使用order by xxxxx asc按其他所有字母开头的数字排序:

1个 10 11 12 2 3 4 5 6 7 8 9 有什么技巧可以使其更正确地排序吗?

此外,为了充分公开,这可以是字母和数字的混合(尽管现在不是),例如:

A1 534克 G46A 100B 100A 100JE 等等....

人们使用不同的技巧来做到这一点。我搜索了一下,发现每个结果都遵循不同的技巧。看看他们:

MySQL中的字母数字排序 MySQL中的自然排序 数字值与字母数字值混合排序 MySQL自然排序 MySQL中的自然排序 编辑:

我刚刚为以后的访问者添加了每个链接的代码。

MySQL中的字母数字排序

1A 1a 10A 9B 21C 1C 1D 预期产量

1A 1C 1D 1a 9B 10A 21C 询问

Bin Way

SELECT tbl_column, BIN(tbl_column) AS binray_not_needed_column FROM db_table ORDER BY binray_not_needed_column ASC , tbl_column ASC

Cast Way

SELECT tbl_column, CAST(tbl_column as SIGNED) AS casted_column FROM db_table ORDER BY casted_column ASC , tbl_column ASC MySQL中的自然排序

表:sorting_test

| 字母数字VARCHAR(75)| 整数INT |

| test1 | 1 | | test12 | 2 | | test13 | 3 | | test2 | 4 | | test3 | 5 |

| alphanumeric VARCHAR(75) | integer INT |

| test1 | 1 | | test2 | 4 | | test3 | 5 | | test12 | 2 | | test13 | 3 |

SELECT alphanumeric, integer FROM sorting_test ORDER BY LENGTH(alphanumeric), alphanumeric
数字值与字母数字值混合排序

2a, 12, 5b, 5a, 10, 11, 1, 4b 预期产量

1, 2a, 4b, 5a, 5b, 10, 11, 12 询问

SELECT version FROM version_sorting ORDER BY CAST(version AS UNSIGNED), version; 希望这可以帮助

2020-05-10 19:50:55 企业邮箱发送邮件时,若出现投递失败产生退信,内容提示包含如下: the mta server of * reply:550 failed to meet SPF requirements 或者 the mta server of 163.com — 163mx01.mxmail.netease.com(220.181.14.141) reply:550 MI:SPF mx14,QMCowECpA0qTiftVaeB3Cg—.872S2 1442548128 http://mail.163.com/help 301703