私はクエリを実行するのが好きなmysqlテーブルを持っています。私のテーブルには、次のようになります。PHP "配列クエリ" /複数のクエリ
date activity amount -------- ------ -------- day 1 drink 0 day 1 eat 1 day 1 breath 1 day 2 drink 0 day 2 eat 0 day 2 breath 0 day 3 drink 1 day 3 breath 0 day 4 eat 1 etc etc etc
私は何をしたいのですが1で食べ、事実である日、私はそれらの日のためにすべての活動を表示したい時に見ることです
//What I was doing right now is: $activityarray = array(); $result = mysql_query("SELECT * FROM table WHERE activity='eat' AND amount='1'"); $row = mysql_fetch_assoc($result); //this returns all rows where activity=eat and amount=1 do{ //perform for each result row a new query; look for the 'date'=$row[date] from the first query and show all activities that have been done that day (activity=1) $result2 = mysql_query("SELECT * FROM table WHERE date='".$row[date]."'"); $row2 = mysql_fetch_assoc($result2); do{ array_push($activityarray,$row2['activity']); }while($row2 = mysql_fetch_assoc($result2)); }while($row = mysql_fetch_assoc($result)); print_r($activityarray);
1日に何千ものアクティビティが数多くあるので、これは私にとって最も効率的な方法ではないようです。 1つのクエリでこれをより効率的に行う方法はありますか? (だから、食べる日のすべての活動をチェックする= 1)。 誰でも私を私にすることができます!
somethignを= '食べる'そして量= '1') ' –
@ダゴンそれは'どこの日に... 'であるべきです – Barmar
ああ、うん、それはちょっと速かった –