Php 如何仅从mysql查询中获取一行
我总是这样做Php 如何仅从mysql查询中获取一行,php,mysql,Php,Mysql,我总是这样做 $q = "select whatIwant FROM table where id = 'myId'"; $r = mysql_query($q); while($i = mysql_fetch_array($r){ /* iterate just one withem */ $j = $i['whatIwant']; } echo $j; 这通常是怎么做的?(我只是想避免不必要的循环)我想你在寻找这个: 添加限制X,Y其中X是起始行,Y是要返回的行数 //will
$q = "select whatIwant FROM table where id = 'myId'";
$r = mysql_query($q);
while($i = mysql_fetch_array($r){
/* iterate just one withem */
$j = $i['whatIwant'];
}
echo $j;
这通常是怎么做的?(我只是想避免不必要的循环)我想你在寻找这个:
添加
限制X,Y
其中X是起始行,Y是要返回的行数
//will always return 1 row. note your orders
$q = "SELECT whatIwant FROM table WHERE id = 'myId' limit 0, 1";
从id='myId'限制1的表格中选择whatIwant
那么就省去这个循环:
$q = "select whatIwant FROM table where id = 'myId'";
$r = mysql_query($q);
$i = mysql_fetch_array($r);
$j = $i['whatIwant'];
echo $j;
这将只获取第一行。您可以使用“限制”语法指定sql查询中的行数 另外,您可以删除while循环并返回第一行——如果这是您想要的 例如(无返回值检查):
除了正确的答案外,还有多种处理方法:
- 如果添加
,结果集将只包含一行,而限制1
循环将在一次迭代后终止:
$q = "select whatIwant FROM table where id = 'myId' LIMIT 1"; $r = mysql_query($q); while($i = mysql_fetch_array($r)) { $j = $i['whatIwant']; } echo $j;
- 如果不使用循环调用
,将得到结果集的第一行:mysql\u fetch\u array
$q = "select whatIwant FROM table where id = 'myId'"; $r = mysql_query($q); $i = mysql_fetch_array($r); $j = $i['whatIwant']; echo $j;
- 如果向循环体添加
,循环将在一次迭代后终止break
$q = "select whatIwant FROM table where id = 'myId'"; $r = mysql_query($q); while($i = mysql_fetch_array($r)) { $j = $i['whatIwant']; break; } echo $j;
break
并不十分优雅)
最好的方法是使用LIMIT
并省略while
循环,如下所示。这使代码更清晰,避免了数据库中不必要的操作 mysql\u fetch\u assoc()
正是您想要的
欢迎使用堆栈溢出!虽然这个代码片段是受欢迎的,可能会提供一些帮助,但它将是如何解决这个问题的。如果没有这些,你的答案就没有什么教育价值——记住,你是在将来为读者回答这个问题,而不仅仅是现在提问的人!请在回答中添加解释,并说明适用的限制和假设。
$q = "select whatIwant FROM table where id = 'myId'";
$r = mysql_query($q);
$i = mysql_fetch_array($r);
$j = $i['whatIwant'];
echo $j;
$q = "select whatIwant FROM table where id = 'myId'";
$r = mysql_query($q);
while($i = mysql_fetch_array($r)) {
$j = $i['whatIwant'];
break;
}
echo $j;
$sql224="select * from z_category order by id asc LIMIT 1";
$res224=mysql_query($sql224);
$rw224=mysql_fetch_array($res224);
$activeid2= $rw224['pkid'];