gpt4 book ai didi

sql - 选择查询在其类别(组)下至少有一个非空值时选择行

转载 作者:行者123 更新时间:2023-12-04 22:41:07 25 4
gpt4 key购买 nike

Table1

CatId Name
1 Category1
2 Category2
3 Category3

Table2

FieldId FieldName FieldValue Category
1 Field1 Value1 1
2 Field2 NULL 1
3 Field3 NULL 2
4 Field4 NULL 2
5 Field5 Value2 3
6 Field6 Value3 3

我有一个表结构,如上所示。当该类别下的任何 Fieldvalue 不为 null 时,我想获取该类别下的字段。对于我上面的示例结果应该是:

FieldId     FieldName    FieldValue   Category
1 Field1 Value1 1
2 Field2 NULL 1
5 Field5 Value2 3
6 Field6 Value3 3

如您所见,在类别 1 下,字段 2 具有空值,但仍会显示。在类别 2 下,field3 和 field4 都具有空值,因此不应选择。

有人可以帮我用sql查询上面的问题吗?我认为的一种方法是使用 groupby 类别并查看 count(FieldValue)>0,其中 fieldvalue 不为 null。但我对如何将此逻辑带入 sql 感到困惑?

提前致谢。

最佳答案

select *
from table2
where category in (select distinct category
from table2
where fieldvalue is not null)

关于sql - 选择查询在其类别(组)下至少有一个非空值时选择行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13876478/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com