Mysql 如何使用SQL在一系列字母和数字之间进行搜索

Mysql 如何使用SQL在一系列字母和数字之间进行搜索,mysql,sql,Mysql,Sql,我有一个列,列中有一系列介于aa01和ZZ99之间的字母和数字。我似乎不知道如何在列中搜索特定范围的内容,例如aa00到BZ99 我尝试使用下面这样的中间函数,但不起作用: SELECT test_name FROM Test WHERE test_series BETWEEN 'aa00' and 'BZ99' GROUP BY test_name 编辑:我尝试添加引号,但仍然没有返回任何内容。(我在上面也添加了引号) Edit2:MySQL是引擎。因为我不能发表评论,所以我将在这里添加它作

我有一个列,列中有一系列介于aa01和ZZ99之间的字母和数字。我似乎不知道如何在列中搜索特定范围的内容,例如aa00到BZ99

我尝试使用下面这样的中间函数,但不起作用:

SELECT test_name
FROM Test
WHERE test_series BETWEEN 'aa00' and 'BZ99'
GROUP BY test_name

编辑:我尝试添加引号,但仍然没有返回任何内容。(我在上面也添加了引号)


Edit2:MySQL是引擎。

因为我不能发表评论,所以我将在这里添加它作为答案。这很好地解释了这一点

编辑:具体来说,这一部分,请注意ASCII值:

同样,表达式:

where food_name BETWEEN 'G' AND 'O'
将匹配“O”,但不匹配以“O”开头的任何其他字符串

曾经简单的乱码是使用“~”。它具有最大的7位ASCII值,因此对于英语语言应用程序,它通常工作良好:

where food_name between 'G' and 'O~'

“介于之间”要求将较低的值放在第一位。由于大写字符位于小写字符之前,请切换顺序;但一定要确定这是你追求的价值观之间的界限

SELECT test_name
FROM Test
WHERE test_series BETWEEN 'BZ99' and 'aa00'
GROUP BY test_name

在字符串中添加引号。
在哪里测试'aa00'和'BZ99'之间的序列。
?什么发动机?mySQL,Postgresql?SQL server、Oracle等?Ascii小写在大写之后,所以它必须是“BZ99”和“aa00”。最低的项目必须位于两者之间的第一位。我尝试添加引号,但它仍然不返回任何内容。MySQL是enginein Ascii大写字符在“代码”方面排在小写之前,而在“代码”和“介于”之间要求小写值在对中位于第一位。因此,如果启用区分大小写,则“BZ99”位于“aa00”之前。因此,颠倒这对,你应该会得到一些结果。请不要在你的答案中只留下链接。至少放一个简短的摘要。
由于大写字符位于小写字符之前
此语句取决于列的排序规则。非常好的评论。我确实假设了一种排序规则,其中大写字母在小写字母之前。