mysql - 搜索字符串时只考虑初始数字
问题描述
这是我的查询:
select id, name, admin_user_id
from companies
where id = "21-09-20181535.abc";
结果:
21,anand,9331
由于 id 列是自动递增的,我希望没有结果,因为搜索字符串是字母数字。我应该怎么做才能得到想要的结果?
解决方案
显式转换将处理此问题:
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";
=
这与对字符类型使用运算符相同。
推荐阅读
- c - 库在编译期间被跳过,即使它位于正确的目录中
- video-capture - 使用笔和纸捕捉手写的实时视频,并用一些对象或光标替换视频中的手
- c++ - 错误:我的代码上的一元“*”(有“int”)的类型参数无效
- c# - 也不例外,但我的数据没有写入 SQL Server 数据库
- python - 从循环中将值插入到具有定义维度的数组中
- javascript - 使用 NodeJS 在 google drive API 中获取特定文件的内容
- google-sheets - 您是否可以在引用单元格而不是数字的谷歌查询中设置限制?
- c++ - 如何在 C++ 中获取 3d 数组中的第 3 维数组?
- python - 为什么 COUNT 返回错误的数字?
- python - 单击按钮将动态 html 页面下载为 pdf