0

私は長い間これを解決しようとしてきましたが、あきらめました。1 つのテーブルから情報を取得していますが、問題ありません。しかし、別のテーブルからの情報に応じて、一部の結果を除外する必要があります。


querylist

id | artist         | title 
1  | Kelly Clarkson | Catch My Breath
2  | Nicki Minaj    | Va Va Voom
3  | Jingle         | Jingle100

songlist

id | artist         | title           | songtype
1  | Kelly Clarkson | Catch My Breath | S
2  | Nicki Minaj    | Va Va Voom      | S
3  | Jingle         | Jingle100       | I

querylist テーブルから結果を取得したら、songtype S を持たないすべての曲を songlist テーブルから除外したいと考えています。

私はこれを持っています。songtype S のみの曲を入手するにはどうすればよいですか?

$result = mysql_query("SELECT * FROM queuelist q LEFT JOIN requestlist r ON q.requestid = r.id LEFT JOIN songlist s ON q.songid = s.id ORDER BY q.sortID ASC LIMIT 5 ",$dbcon);

 echo "<table>\n";
 if ($myrow = mysql_fetch_array($result)){
    do{
      $artist = $myrow["artist"]; 
      $title = $myrow["title"];
      echo "<tr><td>$artist - $title</td>";
      echo "</tr>\n";

   }while($myrow = mysql_fetch_array($result));
 }
echo "</table>";
4

1 に答える 1

2

明確にするために:追加:WHERE s.songtype ='S'

SELECT * FROM queuelist q 
LEFT JOIN requestlist r ON q.requestid = r.id 
LEFT JOIN songlist s ON q.songid = s.id  
WHERE s.songtype='S' 
ORDER BY q.sortID ASC LIMIT 5
于 2013-01-24T23:19:19.363 に答える