下面的代碼很好用。我有一個MySQL數據庫,其中包含按不同類別分類的書籍標題。在下面的代碼中,變量「site」代表書名。每個類別都由MySQL數據庫中的不同表格表示。當它的值爲空時排除變量
下面的代碼通過所有類別(MySQL表格)的總票數排名前25名書籍(網站)。我試圖排除空白書名(即site ='')。我怎樣才能做到這一點?
我試過在幾個地方插入WHERE site != ''
但我收到一條錯誤消息。所以我想我問,我在哪裏可以插入WHERE site != ''
?
由於提前,
約翰
<?
mysql_connect("mysqlv10", "username", "password") or die(mysql_error());
mysql_select_db("database") or die(mysql_error());
$result = mysql_query("SHOW TABLES");
$tables = array();
while ($row = mysql_fetch_assoc($result)) {
$tables[] = '`'.$row["Tables_in_bookfeather"].'`';
}
$subQuery = "SELECT site, votes_up FROM ".implode(" UNION ALL SELECT site, votes_up FROM ",$tables);
// Create one query that gets the data you need
$sqlStr = "SELECT site, sum(votes_up) sumVotesUp
FROM (
".$subQuery.") subQuery
GROUP BY site ORDER BY sum(votes_up) DESC LIMIT 25";
$result = mysql_query($sqlStr);
$arr = array();
echo "<table class=\"samples2\">";
while ($row = mysql_fetch_assoc($result)) {
echo '<tr>';
echo '<td class="sitename2"><a href="booklookup3.php?entry='.urlencode($row["site"]).'&searching=yes&search=search">'.$row["site"].'</a></td>';
echo '<td>'.$row["sumVotesUp"].'</td>';
echo '</tr>';
}
echo "</table>";
?>
謝謝......它的工作原理。 – John 2009-08-19 00:00:50