我在aa01和ZZ99之间有一系列字母和数字。我似乎无法弄清楚如何搜索列中的某些范围,例如aa00到BZ99。
我尝试使用如下所示之间的功能,但它没有用:
SELECT test_name
FROM Test
WHERE test_series BETWEEN 'aa00' and 'BZ99'
GROUP BY test_name
编辑:我尝试添加引号但它仍然没有返回任何内容。(我上面也添加了它)
Edit2:MySQL是引擎。
答案 0 :(得分:0)
BETWEEN要求较低的值为第一个。由于大写字符在小写字母之前,切换顺序;但要确定你所追求的价值之间的差异!。
SELECT test_name
FROM Test
WHERE test_series BETWEEN 'BZ99' and 'aa00'
GROUP BY test_name
答案 1 :(得分:-1)
由于我无法发表评论,我将在此处添加此作为答案。这很好地解释了它。
SQL BETWEEN for text vs numeric values
编辑:具体来说,这部分,请注意您的ASCII值:
同样,表达式:
where food_name BETWEEN 'G' AND 'O'
将匹配'O',但不匹配以'O'开头的任何其他字符串。
一旦简单的kludge使用“〜”。它具有最大的7位ASCII值,因此对于英语应用程序,它通常运行良好:
where food_name between 'G' and 'O~'