0

検索語に関連するすべての行を収集するテーブルを実行するwhileループがあります。問題は、データベースにまったく同じ情報を含む複数の行があるため、whileループが実行されると、重複した情報が投稿されることです。whileループが重複した状況を表示しないようにする方法を見つけようとしています。エコーされた変数の周りにifステートメントを実行することを考えていましたが、重複した情報が表示されないようにするために何をチェックするかわかりません。以下のコードがあります。

$search = mysql_query("SELECT `primary_id`, `person_requested`, `likes` FROM 

`requests` WHERE `person_requested` LIKE '%$search_term%'");



while ($results_row = mysql_fetch_assoc($search)) 

{

$persons = $results_row['person_requested'];

echo $persons;  

}
4

2 に答える 2

1

クエリで使用DISTINCTして、個別のレコードを返します。

$search = mysql_query("SELECT DISTINCT `person_requested`, `likes`
              FROM `requests` WHERE `person_requested` LIKE '%$search_term%'");
于 2012-08-14T17:56:32.773 に答える
0

必要な結果のみを返すようにSQLを調整してみてください。を使用DISTINCTして、重複する結果を排除してみてください。

于 2012-08-14T17:56:46.300 に答える