phpmyadmin MySQL选择文本列上某个范围内的行

bfrts1fy  于 2022-11-09  发布在  PHP
关注(0)|答案(1)|浏览(128)

我有一个名为basicinfo的表和一个名为iepNo的列,它包含基于特定格式的值,例如

m-195001
m-195002
m-195003 and so on.

我想根据给定的iepNo范围获取记录。例如,我想获取m-233m-334之间的iepNo
到目前为止,我使用的是以下查询:

SELECT * 
FROM basicinfo 
WHERE iepNo BETWEEN "M-100" AND "M-200"

但实际上,在m-100m-200之间我应该只得到100行。列iepNo的类型是varchar(13)
请指导我如何解决此问题。

iswrvxsc

iswrvxsc1#

您可以先撷取ID值并转换成整数,然后再进行比较:

SELECT * 
FROM basicinfo 
WHERE CAST(SUBSTRING_INDEX(iepNo, '-', -1) AS UNSIGNED) BETWEEN 100 AND 200;

相关问题