sql中的下劃線不做爲通配符的作法

1.java中替換字符制定字符(替換正則字符串)
    將下劃線("_")替換爲斜線和下劃線"\_" 只能使用replace,使用replaceAll失敗
   platform_Name = platform_Name.replace("_", "\\_");
   如aaaa_bb_cdda_ds_d_s_a替換後爲aaaa\_bb\_cdda\_ds\_d\_s\_a
2.sql中使用escape符號 
如:
mysql中的test表中數據以下
+----+-----------+
| id | name      |
+----+-----------+
|  1 | vc_177    |
|  2 | vc_177New |
|  3 | v__177New |
|  4 | v__1_New  |
|  5 | vcvms     |
+----+-----------+
選擇須要匹配v__ 指望獲得數據爲
v__177New
v__1_New
則須要使用一下語句:
select * from test t where t.name like '%v\_%' escape  '\\';
便可
此時_下劃線再也不是匹配符
 
3.oracle中的語法則是:(escape後面的斜線數量不一致)
 
select * from test t where t.name like '%v\_%' escape ' \';
相關文章
相關標籤/搜索