2016-12-10 13 views
2

私のデータベースにテーブルがありますtblです。このテーブルでは、私はidnumの両方を通常のint値として持っています。
numより大きいnumのIDがいくつあるかを調べたい(num> 20)。それは事前に...感謝を0毎回を印刷していること、20より大きい値の数を数えます

$counter= 0; 
$sqlQuery = "select num from tbl"; 
$finalResult= $databasename->prepare($sqlQuery); 
$finalResult->execute(); 
$numArr= $finalResult->fetchColumn(); 
foreach ($numArra $row){ 
    if($row > 20) 
     $counter++; 
} 

echo ($counter); 

問題がある:ちょうど私がこれを書いたnum>が20を持っているどのように多くの行をカウントします。

答えて

5

これは必要ありません。ちょうど

SELECT COUNT(*) FROM tbl WHERE num > 20 

これをPHPにプラグインしたい場合や、これを動的に実行したい場合は、

$finalResult= $databasename->prepare("SELECT COUNT(*) FROM tbl WHERE num > ?"); 
$finalResult->bindParam(1,$someParam); 
$finalResult->execute(); 
$numArr = $finalResult->fetchColumn(); 

echo ($numArr); 

非常に細かい&より便利で簡単な作業だ

+0

をはるかに簡単。どうもありがとうございました! – Dave

+0

さらにもう1つ - 「20」と書くのではなく、値を入れたい場合は?どうやってやるの? – Dave

+0

私は新しくてupvoteできませんが、確かに答えを受け入れました。再度、感謝します! – Dave

関連する問題