select 找到参数的所有 "groups/partitions"

select all "groups/partitions" where parameter is found

无需过多介绍 - 我需要创建数据组(按特定字段分组),然后显示包含参数的所有记录组。我需要 GROUP 中的所有记录,即使有些记录与参数不匹配。任何没有记录包含该参数的组都将被抑制。

我正在使用 db2,我只需要基本语法方面的帮助。我认为在子查询中使用 PARTITION_BY 可能是正确的方法。有任何想法吗?提前致谢。

它回答了问题吗?

with table1 (group_column, expression, other_column) as (
  values
  ('group1', 'false', 'First in G1'),
  ('group1', 'false', 'Second in G1'),
  ('group2', 'false', 'First in G2'),
  ('group2', 'true', 'Second in G2'),
  ('group3', 'true', 'Full G3')
)
select
  table1.group_column, expression, other_column 
from table1
  inner join
  (
    select
      distinct group_column
    from table1
    where expression = 'true'
  ) as groups on table1.group_column = groups.group_column
GROUP_COLUMN EXPRESSION OTHER_COLUMN
group2 false First in G2
group2 true Second in G2
group3 true Full G3