欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 健康 > 美食 > sql中判断一个字段是否包含一个数据的方法有哪些?

sql中判断一个字段是否包含一个数据的方法有哪些?

2025/2/23 7:24:21 来源:https://blog.csdn.net/m0_57764570/article/details/143508168  浏览:    关键词:sql中判断一个字段是否包含一个数据的方法有哪些?

目录

一、like模糊查询(like关键字)

二、locate(字符串,字段名)

三、 instr(字段名,字符串)

四、regexp_extract(subject, pattern, index)

以下是几种方法,使用hive来举例演示一下: 

-- 举例:创建一个表
CREATE TABLE employee (name STRING,age INT
);INSERT INTO employee VALUES('Alice', 25),('Bob', 30),('Charlie', 35),('David', 40);

问题:查询名字里带  "i"  的人 

一、like模糊查询(like关键字)

select * from employee where name like '%i%';

查询结果:

二、locate(字符串,字段名)

  说明:返回某个字符串在某个字段中第一次出现的位置,如果要是没有找到,返回0

select * from employee where locate('i',name)>0 ;

查询结果:

三、 instr(字段名,字符串)

说明:返回某个字符串在某个字段中第一次出现的位置,如果要是没有找到,返回0

select * from employee where instr(name,'i')>0 ;

查询结果:

四、regexp_extract(subject, pattern, index)

说明:

  • subject是要判断的字段名;
  • pattern是要匹配的字符串;
  • 0表示从整个匹配结果中获取整个字串。

如果返回的字符串不为空,则说明匹配到了,即包含字符串'i',否则不包含。

select * from employee where regexp_extract(name,'i',0)!='';

查询结果:

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词