SQL中的escape函数
# %代表任意多个字符
select * from user where username like '%huxiao';
select * from user where username like 'huxiao%';
select * from user where username like '%huxiao%';
# _代表一个字符
select * from user where username like '_';
select * from user where username like '______';
select * from user where username like 'huxia_';
select * from user where username like 'h_xiao';
# 如果我就真的要查%或者_,怎么办呢?使用escape,转义字符后面的%或_就不作为通配符了,注意前面没有转义字符的%和_仍然起通配符作用
select username from gg_user where username like '%xiao_%' escape '';
select username from gg_user where username like '%xiao%%' escape '';
通常使用''来做转义字符,但是也可以使用其他的符号
================================================================
项目中可用:select * from ZD_RPTFORMULA_VAR where BB_NAME = 'BB40' and VAR_KEY like '%Z\_A%' escape '\'
================================================================
其他:
[_] = _
符号 含义
LIKE '5[%]' 5%
LIKE '5%' 5 后跟 0 个或更多字符的字符串
LIKE '[_]n' _n
LIKE '_n' an, in, on (and so on)
LIKE '[a-cdf]' a, b, c, d, or f
LIKE '[-acdf]' -, a, c, d, or f
LIKE '[ [ ]' [
LIKE ']' ]
浙公网安备 33010602011771号