名前と気分の2つの列しかないテーブルがあるとします。行には人の名前とその気分が保持されます。複数の気分がある場合は、複数の行がDBに格納されます。
たとえば、データベースには、幸せで、興奮し、誇りに思っているジョンがいます。
これは次のように表されます
John Happy
John Excited
John Proud
私がやりたいのは、満たされているいくつかの気分に基づいて名前を選択することです。UNIONに似ています:
SELECT name WHERE mood=Happy
UNION
SELECT name WHERE mood=Excited
UNION
SELECT name WHERE mood=Proud
ただし、上記の和集合を使用すると、次のようになります。
John
John
John
ユニオンはすべて、ジョンの単一の結果になりますが、クエリの1つにのみ一致する名前も選択します。
個々のmysql_resultリソース(私はPHPを使用しています)を取得し、一致する結果を探すいくつかのアルゴリズムを考えることができますが、知りたいのは、MySQLがすでにこれを容易にしているかどうかです。
上記はかなり漠然とした一般化であることに気づきました。言うまでもなく、私の実際のプログラムはかなり複雑であり、この質問のために少しおろそかにしました。遠慮なく質問してください。