[id][items]
1 会社員
1 男
2 会社員
2 女
3 自営業
3 男
表示して欲しい検索結果は以下の通りです。
[id][items]
1 会社員
1 男
※idはひとつのグループとします。
※HTMLのフォームから送信されることを想定しています。(選択箇所は「職業」「性別」)
ですので、id='1' と言うようにidをフォームから指定できません。
MySQLは4.1.22を使っています。
SQLiteでテストし、MySQLでテストしていないですが、以下の構文で抽出出来ると思います。
・会社員で抽出したデータと男で抽出したデータと元のデータベースで検索を行います。
試してみてください。
データベース名を"DataBase"とします。
select DataBase.id, DataBase.items
from DataBase,
(select id, items from DataBase where items="会社員") T1,
(select id, items from DataBase where items="男") T2
where T1.id = T2.id and DataBase.id=T1.id
回答ありがとうございます。
理屈としては「一致するデータのIDを取得し、照合」と言うことですよね?
ただ、フォームが「職業」「性別」以外にある場合、上記のソースだと対応出来ないと思います。
複数項目対応させるには、やはりPHPを使って分解するしかないのでしょうか。
もし他のやり方をご存じの方がいらっしゃいましたら、回答お願いします。