MySQL用LIKE特殊字元搜尋

2021-10-11 16:11:38 字數 719 閱讀 9528

sql的like查詢語句中,有一些特殊的字元,需要轉換後才能搜尋到結果:

':用於包裹搜尋條件,需轉為\';

%:用於代替任意數目的任意字元,需轉換為\%;

_:用於代替乙個任意字元,需轉換為\_;

\:轉義符號,需轉換為\\\\。

以下是一些匹配的舉例。

select * from `table` where `title` like 'a\'b%';            -- 搜尋a'b...

select * from `table` where `title` like 'a\%b%';            -- 搜尋a%b...

select * from `table` where `title` like 'a\_b%';            -- 搜尋a_b...

select * from `table` where `title` like 'a\\\\%';           -- 搜尋a\b...

在php**中,可以用這樣的方法批量替換:

function filterlike($keyword) {

$search = array('\'', '%', '_', '\\');

$replace = array('\\\'', '\\%', '\\_', '\\\\\\\\');

return str_replace($search, $replace, $keyword);

MySQL用LIKE特殊字元搜尋

sql的like查詢語句中,有一些特殊的字元,需要轉換後才能搜尋到結果 用於包裹搜尋條件,需轉為 用於代替任意數目的任意字元,需轉換為 用於代替乙個任意字元,需轉換為 轉義符號,需轉換為 以下是一些匹配的舉例。select from table where title like a b 搜尋a b ...

MySQL用LIKE特殊字元搜尋

sql的like查詢語句中,有一些特殊的字元,需要轉換後才能搜尋到結果 用於包裹搜尋條件,需轉為 用於代替任意數目的任意字元,需轉換為 用於代替乙個任意字元,需轉換為 轉義符號,需轉換為 以下是一些匹配的舉例。select from table where title like a b 搜尋a b....

MySQL用LIKE特殊字元搜尋

sql的like查詢語句中,有一些特殊的字元,需要轉換後才能搜尋到結果 用於包裹搜尋條件,需轉為 用於代替任意數目的任意字元,需轉換為 用於代替乙個任意字元,需轉換為 轉義符號,需轉換為 以下是一些匹配的舉例。select from table where title like a b 搜尋a b....