AND a.`type` IN #{typeArray} 注:这种方法是把传入的字符串用逗号分割成 数组 ,然后进行 条件 查询 '仿制简单的 SQL 查询 语句,用于对二维 数组 查询 '参照 SQL 语句:Select * From array [Where conditions] [Distinct fields] [ResultWithTitle] '实现功能: ' 依 条件 设置 查询 数组 ,返回包含 查询 字段 (或全部 字段 )的 数组 ,可多 条件 组合。 ' 条件 运算符包括:> = < >= <= <> , like(正则表达式) ' 使用此函数,需要在文件中引用正则表达式脚本 Microsoft VBScript Regular Expressions x.x ' (根据不同的电脑配置和环境此处会有差异) '算法简要: ' 1、 查询 条件 运算符:仅有 >, =, <, >=, <=, <> , like(正则表达式) ' 本函数中仅有上述运算符。原因在于,更多的运算符编制逻辑过于复杂,又不太常用。 ' 为了尽可能多地容纳各种运算关系,添加了正则表达式匹配运算, ' 在某个单一 条件 中,正则几乎可以容纳绝大部分的比对运算关系了。 ' 2、数字比较: ' 采用了将数字型字符串类型转换为数字之后再比较的方法,结果更为准确。 ' 3、其他算法和运算速度: ' 编制过程中,试验过使用 正则+逻辑分支+表达式引用 的方法, ' 可以实现几乎等同于 SQL 查询 语句的复杂功能,而且代码更简捷。 ' 但运算速度相差过于悬殊(大概几十到上百倍 - "一闪而过"和"一袋烟"的差距!),最后不得不放弃。 ' 所以现在的版本相当于一个简化了的select语句,但对于大多数 查询 情况而言够用了。 问题: 条件 查询 的时候 如果 查询 条件 数组 例如:需要 查询 出 id在[1,2,3,4,......]的所有数据, 数组 中的数据不能写死在in语句中,这个时候就可以直接使用list作为 条件 。 需要注意的是,实体类要加一个 数组 存储 条件 集合 解决方法: idList是实体类中存储id的集合 <if idList != null and idList.size > 0 > and id in <foreach collection = 'idLi select 字段 名 from 表名 where userid in ('123','12345','3456','7896’)例如将一个 数组 ['123','12345','3456','7896‘] 作为一个 SQL 语句的 查询 条件 ,正常这个语句应该是。当 数组 数据已知且固定我们可以手动将数据填入 sql 语句中,当不可知或数据多时可以通过循环写入。 https://my.oschina.net/Kenyon/blog/133974 2、官方文档: https://www.postgre sql .org/docs/9.2/functions-array.html 3、pg sql 中的窗口函数 https://blog.csdn.net/xfg0218/article/details/104340898 –最后一句,提示array_agg() 在9.20 .将结果集转成 数组 的 array_ag 项目列表,根据平台模糊 查询 ,每个项目可以对应多个平台。 例如:根据小红书 查询 ,可以 查询 出平台为“小红书” 和 “小红书,抖音”的项目。 数据库 定义一个 数组 类型的 字段 用过Pg SQL 的朋友因该都知道,Pg SQL 可以直接定义 数组 类型的 字段 , 假如有一个project_info表,我们给表增加一个 数组 类型的 字段 cooperation_type ALTER TABLE public.project_info ADD cooperationType 查询 嵌套 数组 如果一个表包含 STRUCT 的 ARRAY,则可展平 ARRAY 以 查询 STRUCT 的 字段 。您也可以展平 STRUCT 值的 ARRAY 类型 字段 查询 ARRAY 中的 STRUCT 元素 以下示例将 UNNEST 与 CROSS JOIN 结合使用,以展平 STRUCT 的 ARRAY。 WITH races AS ( SELECT "800M" AS race, [STRUCT("Rudisha" as name, [23.4, 26.3, 26.4, 26.1] a