Oracle SQLで解決したい問題があります。以下のテーブルを考えて、名前のリストを渡すようにクエリを実行したいと思います。それらが単一の ANIMAL グループを表す場合、その ANIMAL 文字列が返されます。
+--------+------+ |動物|名前 | +--------+------+ |犬 |レーシー | |犬 |チャンプ | |犬 |相棒 | |猫 |マフィン| |猫 |チャンプ | |フィッシュ |ワンダ | +--------+------+
たとえば、渡すと: where NAME in ('CHAMP', 'MUFFIN') 戻り値:
+--------+ |動物| +--------+ |猫 | +--------+
しかし、私がそれを渡すと: where NAME in ('CHAMP', 'WANDA') 戻り値:
+--------+ |動物| +--------+ |魚 | +--------+
パラメータにはすべての猫の名前が含まれているわけではありませんが、その中にすべての魚の名前が含まれているためです。
最後の例: where NAME in ('CHAMP', 'WANDA', 'LACY', 'MUFFIN')
+--------+ |動物| +--------+ |猫 | |魚 | +--------+