前言:
在这次项目中遇到条件范围筛选。
对某个字段做范围查询。
筛选的值数据库存储类型为varchar
是有规律的字母掺加时间数字加顺序递增的数字序号
首先这个值的筛查条件以日期做选择范围,Mysql语法做范围查询我优先选择比较运算符。
然后就是了解Mysql字符串类型转换。
查阅了文档了解到,在mysql里转化语法主要为两个 cast 和 convert
CAST(value as type);
CONVERT(value, type);
当 '123aaa' -> ‘123’; ‘abc’ -> 0 ‘abc123’ -> '0' // 遇到字母就不转化
这时候字符串与数字比较问题已经解决了,下个问题就是对字符串进行裁剪
看了mysql的函数文档
substring(str, star, len); // 对字符串做裁剪
最终我们的问题解决函数就出来了:
如如下一张表:
employee_list
—————————————————————
| id | name |
| AAAA20201206-00001 | xiaohong |
| AAAA20201207-00001 | xiaoming |
| AAAA20201207-00001 | xiaoming |
| AAAA20201207-00001 | xiaoming |<