我有一个想在 Oracle SQL 中解决的问题。鉴于下表,我想查询它,以便我将列表名称传递给它,如果它们代表单个 ANIMAL 组,则返回该 ANIMAL 字符串。
+------+------+ |动物|名称| +------+------+ |狗 |花边 | |狗 |冠军 | |狗 |好友 | |猫 |松饼| |猫 |冠军 | |鱼 |万达 | +------+------+
例如,当我通过它时: where NAME in ('CHAMP', 'MUFFIN') 它返回:
+------+ |动物| +------+ |猫 | +------+
但是如果我通过它: where NAME in ('CHAMP', 'WANDA') 它返回:
+------+ |动物| +------+ |鱼 | +------+
因为参数没有包含所有的猫名,但它确实包含了所有的鱼名。
最后一个示例:其中 NAME in ('CHAMP', 'WANDA', 'LACY', 'MUFFIN') 返回
+------+ |动物| +------+ |猫 | |鱼 | +------+