如何解决oracle中数字字段中的通配符搜索

如何解决oracle中数字字段中的通配符搜索,oracle,wildcard,Oracle,Wildcard,我有一个这样的问题 SELECT * FROM Table_Name WHERE Category !='0' AND To_Char(Category) like to_char(:paramCategory) 我想使用此类别值实现通配符搜索。当我把值设为9时,没问题,我得到了预期的结果。 但是,当我使用%9、9%或%9%作为类别的值时,这些都不会给出期望的结果。e、 g.它给出类别以9开头的所有结果。。但忽略结果99、59209等。出现了什么问题,我如何解决 该表有许多其他列,但该类别

我有一个这样的问题

SELECT * 
FROM Table_Name
WHERE Category !='0' 
AND To_Char(Category) like to_char(:paramCategory)
我想使用此类别值实现通配符搜索。当我把值设为9时,没问题,我得到了预期的结果。 但是,当我使用%9、9%或%9%作为类别的值时,这些都不会给出期望的结果。e、 g.它给出类别以9开头的所有结果。。但忽略结果99、59209等。出现了什么问题,我如何解决

该表有许多其他列,但该类别为数字类型。请不要建议更改此字段的数据类型


提前感谢您的建议

使用
%9%
应该会给你所有。看这张照片


结果都是行。

实际上,有些情况不允许99来玩。但最近我发现了。不管怎么说,既然您提供了ans并提供了SQLFIDLE的链接,那个么答案就被接受了,投票权就由我来决定了
create table mytest (category number);
insert into mytest values (9959209);
insert into mytest values (9000);
insert into mytest values (1009);

select * from mytest where category like '%9%'