有一个表,列为category not null
、sub_category default null
。
category
始终设置sub_category
是可选的
我需要从表中选择distinct category,sub_category
,
- 排除sub_category不为null且为null的记录
- 如果只有一个
category
+<null>
组合,请记录
category sub_category
girl_toys fluffy
girl_toys dolls
drawing <null> -- keep it since only one null sub_category
paining red_color
paining <null> -- exclude since there is non null sub_category
字符串
预期结果:
category sub_category
girl_toys fluffy
girl_toys dolls
drawing <null> -- keep is since drawing has only one null
paining red_color -- <null> record excluded since there is non null sub_category exists
型
1条答案
按热度按时间ddarikpa1#
很多方法中的一种:
字符串
我假设如果同一个
category
+null
有多个示例,你也想保留一个副本。你实际上只想排除category
+null
,如果同一个category
有另一个非空sub_category
的行。至少这是你的“预期结果”所建议的。如果表很大,并且每个
(category, sub_category)
有许多重复项,则可以使用模拟索引跳过扫描来优化性能。请参阅: