您好,我目前正在查詢從數據庫基礎用戶ID比賽,但是我想避免在我的results_array中選擇重複,這個函數getrandomspecies接收array_result,這個數組結果迭代7次。如何測試我不把重複項放在我的results_array中?我得到了幾個重複。Php如何檢查重複結果?
function getrandomspecies($array_result){
//database connection
$dbn = adodbConnect();
foreach($array_result as $possible){
//query the results
$querys= "select * from taxonomic_units where tsn = $possible";
$resultss = $dbn -> Execute($querys);
while($rowss=$resultss->FetchRow()){
$id = $rowss['tsn']; //there ID
$ranksss = $rowss['rank_id']; //ranking id, I choose 220 and 230
if($ranksss == 220 || $ranksss == 230){
$prelimary_array[] = $id;
}
}
//grab random index
$index = array_rand($prelimary_array,1);
//put result id into a variable
$newspecies = $prelimary_array[$index];
//put that variable in an array
$results_array[] = $newspecies; //there is 7 newspecies/winners at the end, I dont want duplicates
}
return $results_array;
}
現在有簡單的方法來解決這個問題。你可以嘗試在你的查詢中使用group by *從taxonomic_units中選擇*其中tsn = $可能的組由tsn。或由其他一些庫侖組合。 – pregmatch
改變你的mysql查詢來選擇不同或分組由 –
使用Mysql的'DISTINCT' –