欢迎您访问365答案网,请分享给你的朋友!
生活常识 学习资料

PgSQL数组类型字段模糊查询

时间:2023-07-08
MyBatis+PgSQL 实现数组类型字段的模糊查询功能 背景

项目列表,根据平台模糊查询,每个项目可以对应多个平台。
例如:根据合作类型=视频查询,可以查询出合作类型为“视频,图文” 和 “视频”的项目。

数据库定义一个数组类型的字段

用过PgSQL的朋友因该都知道,PgSQL可以直接定义数组类型的字段,
假如有一个project_info表,我们给表增加一个数组类型的字段cooperation_type

ALTER TABLE public.project_info ADD cooperation_type int[] NULL;COMMENT ON COLUMN public.project_info.cooperation_type IS '合作类型';

表设计

存值格式为{ xx, xx},与下面xml里的集合遍历格式是有关联的

实体类

由于数据库字段是 int[]类型的,定义实体类的时候自然要定义成list

```java // 合作类型 private List cooperationType;

MyBatis Mapper.xml文件

SELECT * FROM project_info 1=1 AND ${item} && (cooperation_type)

查询结果

输入2,可以查出所有包含2的

Copyright © 2016-2020 www.365daan.com All Rights Reserved. 365答案网 版权所有 备案号:

部分内容来自互联网,版权归原作者所有,如有冒犯请联系我们,我们将在三个工作时内妥善处理。