跳到主要内容

比较

2024年06月12日
柏拉文
越努力,越幸运

一、等于


二、不等于


三、大于


四、小于


五、小于等于


六、大于等于


七、在两值之间


八、不在两值之间


九、在集合之中


十、不在集合之中


十一、严格比较两个 Null 是否相等

十二、模糊匹配


LIKE (like) 模糊匹配

12.1 语法

select field1,field2,……fieldN
from table_name1,table_name2……
where 字段1 like 条件 [and [or]] 条件二……;

like 同 =: like 不使用 %, 效果跟 = 是一样的

select good_name,good_desc,good_price 
from good
where good_name like "剑姬";

like 匹配开头: like 关键词%

select good_name,good_desc,good_price 
from good
where good_name like "剑%";

like 匹配结尾: like %关键词

select good_name,good_desc,good_price 
from good
where good_name like "%姬";

like 匹配包含: like %关键词%

select good_name,good_desc,good_price 
from good
where good_desc like "%对手%";

like 匹配第二个字符: like _关键词%

select 
event_id
from `base_point`
where
event_id like '_u%';

like 匹配第n个字符: like ____……_关键词%

select 
event_id
from `base_point`
where
event_id like '__y%';

like 匹配倒数第n个字符: like %关键词_

select 
event_id
from `base_point`
where
event_id like '%t_';

like 匹配 _ 字符: %\_ 或者 \_% 或者 %\_%

select 
event_id
from `base_point`
where
event_id like '%\_%';

十三、正则表达式匹配


MySQL 可以通过 LIKE ...% 来进行模糊匹配, MySQL 同样也支持其他正则表达式的匹配, MySQL 中使用 REGEXP 操作符来进行正则表达式匹配。

13.1 语法

select field1,field2,……fieldN
from table_name1,table_name2……
where 字段1 regexp 正则, 字段2 regexp 正则……;

13.2 用法

select good_name,good_desc,good_price 
from good
where good_desc regexp "^让";

十四、为空


十五、不为空