mysql里有个字段age,里面存的是年龄段,格式类如图所示,如果是0-0则是不限
现在的需求是要根据年龄段查找,比如我要找出所有介于25-34岁之间的数据。
那么问题来了,如果where里面使用and的话,得到的结果很少很少,几乎没有,如果使用or,结果是变多了,但是很明显结果并不准确。如何才能准确的查找呢
感谢大家的回答,目前我用的办法是
SELECT age FROM
jobs
WHERE ((substring_index(age,'-',1) >= 16 OR substring_index(age,'-',-1) = 0) OR (substring_index(age,'-',-1) <= 24)) AND !(substring_index(age,'-',1) = 0 AND substring_index(age,'-',-1) = 0);
勉强能用,但是总感觉哪里怪怪的
按你说的30-55符合25-34的话,可以这样