PostgresSQL查询数据中用逗号隔开的数据以及@>与<@的区别
使用场景,某个科室有很多类别1、类别2、类别3三个类别,存到数据库中的数据是‘1,2,3’我要查找选了类别1的数据对于这种需求在mysql中用FIND_IN_SET或者正则表达式可以实现,但是我在pgsql中试了下好像不怎么生效,所以我们要先用string_to_array把字段隔开然后再用@>查询包含某个字符的数据,如下图所示,我们看到包含2的都被查了出来。在pgsql中,@>的意思
·
使用场景,某个科室有很多类别1、类别2、类别3三个类别,存到数据库中的数据是 ‘1,2,3’ 我要查找选了类别1的数据
对于这种需求在mysql中用FIND_IN_SET或者正则表达式可以实现,但是我在pgsql中试了下好像不怎么生效,所以我们要先用string_to_array把字段隔开然后再用@>查询包含某个字符的数据,如下图所示,我们看到包含2的都被查了出来。
在pgsql中,@>的意思包含,除此之外还有<@,可以理解为包含于某字段,适用于多条件筛选,是当我把@>换成了<@的时候可以看到查到的数据是选择了2或者3的,仔细查询了pgsql的官方文档,我找到了有关这两个运算符的说明介绍 。
更多推荐
已为社区贡献3条内容
所有评论(0)