我正试图从我拥有的表中获取业务类型,在上一页上我使用了以下代码
$sql = "SELECT * FROM directorydata WHERE CompanyName LIKE :SearchTerm ORDER BY CompanyName ";
然而,这依赖于搜索项,我只想要使用foreach循环输出的类型列表。有几个业务具有相同的业务类型,我不希望这两次输出。
如果这有帮助的话,这是我以前的foreach循环,尽管这不应该改变任何
if ($stmt->rowcount() > 0) {
foreach($stmt as $row) {
$ResultsCounter++;
$htmlResult .= "<div class='col-md-6 well' style='margin'>" .
"<h4>". $row['CompanyName'] . "</h4>" .
"<p><strong><a href='/" . $row['UrlAlias'] .".htm'>" . $phoneDirectory->formatPhoneNumber($row['Number1']) ."</a></strong></p>" .
"</div>";
if ($ResultsCounter == 8){
$htmlResult .= "<div class=''><a class='collapse-btn' href='#'>See more results</a><div class='span4 collapse-group'><div class='collapse'>";
}
}
if ($stmt->rowcount() >= 8) $htmlResult .= "</div></div></div>";
} else{
$htmlResult .= "<h1 class='text-center'>Sorry no search results found please search again</h1>";
}
}
这里有人帮忙吗?
使用Group by type
或distinct type
$sql = "SELECT * FROM directorydata
WHERE CompanyName LIKE :SearchTerm
GROUP BY type
ORDER BY CompanyName ";
或DISTINCT
$sql = "SELECT DISTINCT type FROM directorydata
WHERE CompanyName LIKE :SearchTerm
ORDER BY CompanyName ";