1

一定の条件が満たされるまでデータベースからデータを取得したい。この条件が満たされたら、それ以降はフェッチを停止します。

while($row=mysql_fetch_array($result1)){
$a1=$row['Count']
if($a1<100){
$w1=$a1
//Now I want to stop fetching data after this point and take the variable "$w1" out
}
4

3 に答える 3

3

あなたが使用することができますbreak

while ($row = mysql_fetch_array($result1)) {
    $a1 = $row['Count'];

    if ($a1 < 100) {
        $w1 = $a1;
        break;
    }
}

またはreturnそれは機能から外れています。

于 2013-03-05T07:05:54.223 に答える
3

最良のオプションは、クエリで指定して条件付けするlimitsことですwhere

クエリの実行が高速になるようにします(フェッチするデータが少なくて済みます)。

最初にデータ全体をフェッチしてフィルタリングするのではなく、最初にデータをフィルタリングしてフェッチします。

あなたの場合:最初の100レコードをフェッチしたい場合:

$sql = "SELECT * FROM table LIMIT 0,100";

そして、あなたが何らかの条件を持っているなら、

$sql = "SELECT * FROM table WHERE field = '".$var."' LIMIT 0,100";
于 2013-03-05T07:06:44.910 に答える
0

ブレークを使用します。以上のクエリでlimit&where条件を使用できます

while($row=mysql_fetch_array($result1))
{
  $a1=$row['Count'];
  if($a1<100)
  {
     $w1=$a1; break;         
  }
}
于 2013-03-05T07:08:20.907 に答える