首页 > 解决方案 > 搜索字符串时只考虑初始数字

问题描述

这是我的查询:

select id, name, admin_user_id 
from companies 
where id = "21-09-20181535.abc";

结果:

21,anand,9331

由于 id 列是自动递增的,我希望没有结果,因为搜索字符串是字母数字。我应该怎么做才能得到想要的结果?

标签: mysql

解决方案


显式转换将处理此问题:

select id, name, admin_user_id 
from companies 
where cast(id as char) = "21-09-20181535.abc";

但是,这不会在id.

另一种选择是允许使用不带通配符LIKE的运算符进行隐式转换:

select id, name, admin_user_id 
from companies 
where id LIKE "21-09-20181535.abc";

=这与对字符类型使用运算符相同。


推荐阅读