如何使用单个字符代替通配符

时间:2018-11-23 15:33:18

标签: sql oracle

我无法在互联网上找到该问题的解决方案,我得到的所有内容都与通配符有关,我不想在我的情况下使用通配符

我想找到所有以'_N'结尾的表,所以我试图执行类似的操作

select * from dba_tables v
where v.table_name like '%_N';

但是''通配符意味着搜索名称为[可以是所有内容] [需要是某些字符]的所有表。我只想使用该'',而我希望所有表都带有' _N'结尾,例如“ EXAMPLE_N”,“ HELP_ME_N”之类的表。

我怎么不能使用'_'通配符?

3 个答案:

答案 0 :(得分:0)

您可以使用foreach e in myDict mylist.Add(e.Value.position)

escape

默认转义字符为where v.table_name like '%$_N' escape $

\

那也行。

答案 1 :(得分:0)

您可以使用'_'逃脱\

select * from table  
where table_name.column_name like '%\_N';

答案 2 :(得分:0)

您也可以使用此:

select * from dba_tables v
where regexp_like(v.table_name,'.*_N$');