例如,在另一個查詢的while循環內查詢中,我有一個mysql_num_rows結果爲4,8,15,16,23,42。我的問題是,我怎樣才能在while循環中完成所有結果? (總計133)謝謝。在while循環中合計mysql_num_rows的總數
編輯:
怎麼樣,如果我想按我的while循環中mysql_num_rows的每個結果的百分比是多少?例如:4,8,15,16,23,42。共是4 = 4/$總和= 3.7%,8 = 8/$總和= 7.4%108 $總和= 108百分比等..
例如,在另一個查詢的while循環內查詢中,我有一個mysql_num_rows結果爲4,8,15,16,23,42。我的問題是,我怎樣才能在while循環中完成所有結果? (總計133)謝謝。在while循環中合計mysql_num_rows的總數
編輯:
怎麼樣,如果我想按我的while循環中mysql_num_rows的每個結果的百分比是多少?例如:4,8,15,16,23,42。共是4 = 4/$總和= 3.7%,8 = 8/$總和= 7.4%108 $總和= 108百分比等..
嘗試是這樣的:
$Sum = 0;
while ($SomeInvariant)
{
mysql_query($SomeQuery);
$Sum += mysql_num_rows();
}
echo 'The sum is: ' . $Sum;
但是,這種方法效率不高(如果$SomeInvariant
在許多迭代中都是正確的,那麼您的應用程序擁有更多併發用戶?)。爲了解決這個問題,我建議重新構建您的方法,以便在SQL中完成添加。這樣,您的查詢可能如下所示:SELECT SUM(ColumnName) FROM ...
。
UPDATE:解決在評論
後續問題如果您還沒有提供查詢的總和,那麼你就必須遍歷數據集的兩倍。第一遍,你會計算總和。在第二遍中,您將計算每個值與總和的比率。
例如:
$Sum = 0;
$Rows = array();
while ($SomeInvariant)
{
mysql_query($SomeQuery);
$Value = mysql_num_rows();
$Rows[] = $Value; // Push the value onto the row array
$Sum += $Value; // Add the value to the cumulative sum
}
echo 'The sum is: ' . $Sum;
foreach ($Rows as $Row)
{
echo $Row . '/' . $Sum . ' = ' . number_format($Row/$Sum) . '%';
}
「$ Sum + = mysql_num_rows();」 - 先生非常感謝您。我不知道'+ ='是可能的。 LOL非常感謝 – theglove
所有PHP操作員都有一個「操作指派」表單。例如,運算符「A x = B」等價於「A = A x B」,其中'x'是任何PHP運算符('+','-','*','/','<<', '> >','.'等) –
如果我想在每個循環中得到mysql_num_rows的每個結果的百分比,那該怎麼辦?例如:4,8,15,16,23,42。總和爲108. $ sum = 108. 4 = 4/$ sum = 3.7%,8 = 8/$ sum = 7.4%等等。 – theglove
添加他們在'while'循環外聲明的變量? '$ total = 0; while($ stuff){$ total = $ total + mysql_num_rows();} ...' –
我們可以看到代碼嗎?主循環外的變量初始化爲零,然後在while循環中添加mysql_num_rows結果? – Genzume
+1使用電視連續劇迷失的數字。 :) – Nathan