如何在 SQL 中对数字列进行 like
搜索?
我想要类似'0.0000%'
的数字。
我试过了
select * from emp where emp_id & '' like '123%'
select * from emp where CONVERT(varchar(20), emp_id) like '123%'
但徒劳无功。
请帮帮我
最佳答案
无论您使用的是哪种 DBMS,并且假设您有正当理由这样做,您都有多种方法可以解决此类问题。我现在能想到三个:
将数字转换为字符串并在此使用 LIKE 运算符:
select * from emp where to_char(emp_id) like '123%';
直接使用数学运算符(如 Andrey 建议的那样),例如:
select * from table where num between 0 and 0.0001;
构造一个数学表达式(其实这只是方法2的另一种情况),例如:
select * from table where abs(num - round(num, 5)) < 0.00001;
关于sql - 就像在 SQL 中搜索数字列一样,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16186962/