2015-09-06 73 views
0

我拉從數據庫表中的一切,並顯示在PHP中的具體數據。sql的結果總和

到目前爲止,我所有的代碼工作,我能夠顯示在PHP的一切,但我想讓另一個PHP文件只顯示特定的數據。例如,我希望它發現在movieview表一切,只顯示具有等於playcount或大於1,按標題升序來顯示它的所有行的數據是

$SQL = "select * from movieview WHERE playCount>=1 Order By c00 Asc"; 
$result = mysql_query($SQL); 

while ($db_field = mysql_fetch_assoc($result)) { 

$imdb = $db_field['c09']; 
$run = $db_field['c11']; 
$row = mysql_fetch_assoc($run); 
$sum = $row['value_sum']; 

現在我想echo $sum;到從所有匹配等於或大於1的原因playcount,結果我沒有試過SQL sum加起來的c11所有值是因爲下面我顯示多個列,我相信是select *

的原因編輯:如果我做到以下幾點:

$db_handle = mysql_connect($server, $username, $password); 
$db_found = mysql_select_db($database, $db_handle); 

if ($db_found) { 

$SQL = "select * from movieview WHERE playCount>=1 Order By c00 Asc"; 
$result = mysql_query($SQL); 

while ($db_field = mysql_fetch_assoc($result)) { 

$imdb = $db_field['c09']; 
$run = $db_field['c11']; 

echo $run; 

它確實顯示了playcount爲1或更大的所有項目的時間,這是很好的。現在我只是希望將所有這些數值合計爲1和並回顯。我也有額外的表格,在php文件中調用,只是一個註釋,如mid,idb和c00。

現在,如果我這樣做: $ db_handle = mysql_connect($ server,$ username,$ password); $ db_found = mysql_select_db($ database,$ db_handle);

if ($db_found) { 

$SQL = "select SUM(c11) AS totalrun from movieview WHERE playCount>=1 Order By c00 Asc "; 
$result = mysql_query($SQL); 

while ($db_field = mysql_fetch_assoc($result)) { 

$imdb = $db_field['c09']; 
$run = $db_field['totalrun']; 

我能夠呼應總數,yey!但我不能在上面列出的其他列調用。

+0

表定義,樣本輸入和期望的輸出 – amdixon

+0

SUM(c11)怎麼樣? –

+0

@MawiaHL我將如何顯示它的PHP中的回聲SUM(C11)? – droopie

回答

1

如果我深知你的問題,你可以這樣做:

$counter=0; 

while ($db_field = mysql_fetch_assoc($result)) { 

$imdb = $db_field['c09']; 
$run = $db_field['c11']; 
$row = mysql_fetch_assoc($run); 
$sum = $row['value_sum']; 
$counter .= $row['c11']; 
} 



echo $counter; 
+0

感謝,但由於某種原因,回聲0值對每個項目 – droopie

1

如果你只是繼續增加總量來看,它應該工作,如果我理解正確的是

$db_handle = mysql_connect($server, $username, $password); 
$db_found = mysql_select_db($database, $db_handle); 

if ($db_found) { 

$SQL = "select * from movieview WHERE playCount>=1 Order By c00 Asc"; 
$result = mysql_query($SQL); 
$run=0; 
while ($db_field = mysql_fetch_assoc($result)) { 

$imdb = $db_field['c09']; 
$run = $run + $db_field['c11']; 
} 
echo $run; 
+0

拋出一個解析錯誤:語法錯誤,意想不到的T_WHILE在第19行是while($ db_field = mysql_fetch_assoc($ result)){edit; nevermind改正$ run = 0;在你的代碼中。它的作品,現在我看到的結果,但我現在看到所有的運行值不只是單一的總和。 – droopie

0

我能夠通過創建另一個SQL查詢來完成。不知道它有多適當,但它的作品。唯一缺少的是,每個結果只算1個,所以如果2個以上的playcount僅僅視爲1.將工作以後,除非你能有一個修復回覆:d

while ($db_field = mysql_fetch_array($result)) { 

$run = $db_field['SUM(c11)'];