[id][name][log_value]
1 month 08
1 day 01
2 month 08
2 day 10
[]はフィールド名
[id]はグループ化されているとお考え下さい。
このような値を持つテーブルがあるとします。
そして検索条件として「8月10日のIDを取得したい」とし、
WHEREで抽出して結果にid2を出したいと思います。
どのようなSQL文を書けば目的の処理が行えるのでしょうか?
MySQLは4.1.22を使っています。
「結果にid2を出したい」という意味が解りかねますが、結果のカラム名をid2 と考えると、以下のSQLでいけるのではないでしょうか。
select
id2 = A.id
from
table_xxx A, table_xxx B
where
A.id = B.id and
A.name = 'month' and
B.name = 'day' and
A.log_value = '08' and
B.log_value = '10'
MySQLの環境が無いので、文法に間違いがあったらすみません。
「id2を出したい」のではなく、検索条件にヒットする項目を出したいのです。idの2が抽出されるのは、あくまで”例”です。
出来れば質問をちゃんと読んでいただき、MySQLのある環境の方に回答してもらいたかったです。