我有一个 varchar(30) 列,如下所示:
953-41
975-12
952-13
934-34
该列的所有数字都采用以下结构:3 个数字和一个短划线后跟更多数字。
我想做一个像 SELECT * FROM tablename WHERE value = 95341
这样的查询
并且仅使用 WHERE 子句中的数字获取 '953-41'。
我无法更改我的数据库并删除破折号,我需要在混合了我想要的数字和中间破折号的行上使用数值进行搜索。
最佳答案
你可以试试:
数据库:
SELECT * FROM tablename WHERE value = INSERT(95341,4,0,'-')
SQL服务器:
SELECT * FROM tablename WHERE value = STUFF(95341,4,0,'-')
关于mysql - 如何使用数字搜索 varchar 列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45924137/