mysql类似查询字符串示例语句
一、SQL模式
SQL模式匹配允许你使用_匹配任何单个字符,和任意数量的字符,%(包括零字符)。在MySQL,SQL模式默认是可以忽略不计的。这里是一些例子。注意:当你使用SQL模式,你不能使用=或!=;用喜欢或不喜欢比较运算符。
从字段中选择字段字段的字段
在条件方面,SQL提供了四种匹配模式:
1,%:任意或多个字符。可以匹配任何类型和长度的字符。
例如,选择*从用户那里u_name像%三%。
将三的u_name张茂三,三藏三条腿,等记录和发现。
此外,如果你需要找到u_name记录三和猫,使用条件
选择*从用户那里u_name喜欢和u_name像%三% %猫%。
如果选择*从用户那里u_name像% 3%猫%使用。
虽然搜索搜索三条腿,但是与张茂三的情况。
2、_说:任何单一字符。单个任意字符匹配,这通常是用来限制表达式的字符长度声明:(可以代表一个汉字)
例如,选择*从用户那里u_name像_三_
才发现,u_name是中间的三藏字和字三;
例如,选择*从用户那里u_name像'三__;
才发现,名字是三个字,第一个字是三个三脚猫;
二、规律
The other types of pattern matching provided by MySQL are the use of extended regular expressions.When you match this type of pattern, use the REGEXP and NOT REGEXP operators (or RLIKE and NOT RLIKE, they are synonyms).
扩展正则表达式的一些字符是:
匹配任何单个字符(单字节字符)。
一个字符类{…}匹配任何字符在中括号。例如,{ ABC }匹配,B,或C为名称的字符的范围,使用1。{ }匹配任何小写字母A-Z、0-9 }和{匹配任何数量的。
*匹配零个或多个事物在它前面。例如,x *,任何数量的X字符0-9数字,任何数字,任何事情,任何。
正则表达式是大小写敏感的,但是如果你愿意,你可以使用一个字符类匹配写的两种方式。例如,{ AA }匹配小写或大写,{ a-za-z }匹配任何两写的信件。
如果它出现在测试值的任何位置,模式匹配(只要它们匹配整个值,SQL模式匹配)。
为了找到一个模式,以便它必须匹配测试值的开始或结束,在模式的开头使用否,或者在模式的结尾使用$。
说明如何扩展正则表达式的作品,如上面所示的查询使用regexp改写下面:
要查找以三开头的名称,请使用匹配名称的开始。
{ },从用户u_name regexp的^三;
将u_name迷你三开始记录和发现。
要查找以三结尾的名称,使用$匹配名称的结尾。
从用户那里u_name regexp的$三;
u_name将找到张三,张茂三等在三年底。
您还可以使用{重复n次运算符重写前一个查询:
{ },从用户u_name regexp B { 2 } $;
注意:如果是汉字,使用时可能需要注意。
下面是一些例子:
一般来说,它可以用这种方式在查询中使用MySQL编写。
复制代码代码如下所示:
*选择
从` tb_require `
在` require_id `
(23, 1024)
这种方法一般适用于数字类型,如果是字符串,则添加一个引号:
复制代码代码如下所示:
*选择
从` tb_require `
WHERE `require_name`
在('AAA','bbbb)
当您查询字符串时,如果您想进行模糊匹配,可以使用喜欢加上%:
复制代码代码如下所示:
*选择
从` tb_require `
在` require_name `像aa%
因此,如果有需要,您需要查询多个字符串吗喜欢加进去,怎么写
在这个时候,你可以使用MySQL的连接功能
复制代码代码如下所示:
从客户中选择*
where'robert Bob Smith III博士。像concat(%,名称)
这就解决了类似的问题。
需要注意的是,连接需要遵循的重要的支架,也没有空间。如果有空间,它可能是错误的。
注意,当使用SQL模式时,不能使用或!=;用喜欢或不喜欢比较运算符。
从字段中选择字段字段的字段
在条件方面,SQL提供了四种匹配模式:
1,%:任意或多个字符。可以匹配任何类型和长度的字符。
如
复制代码代码如下所示:
选择*从用户那里u_name像%三%。
将三的u_name张茂三,三藏三条腿,等记录和发现。
此外,如果你需要找到u_name记录三和猫,使用条件
复制代码代码如下所示:
选择*从用户那里u_name喜欢和u_name像%三% %猫%。
如果使用
复制代码代码如下所示:
选择*从用户那里u_name像猫%% 3%。
虽然搜索搜索三条腿,但是与张茂三的情况。
2、_说:任何单一字符。单个任意字符匹配,这通常是用来限制表达式的字符长度声明:(可以代表一个汉字)
如
复制代码代码如下所示:
选择*从用户那里u_name像_三_
才发现,u_name是中间的三藏字和字三;
例如
复制代码代码如下所示:
选择*从用户那里u_name像'三__;
才发现,名字是三个字,第一个字是三个三脚猫;