如果我只有一行我正在通过
$sql = mysql_query("SELECT id,user,comments FROM user WHERE id='15' AND user = '15'");
有没有办法从这一行获取注释而不经过while循环:
while($row = mysql_fetch_array($sql)){
$comments = $row['comments'];
}
除了使用while循环之外还有类似的东西吗?如果我的数据有数千到数百万的数据,那么while循环需要很长时间吗?这是一种更合理的方式来定位某一行并降低其速度吗?
感谢您的帮助!
答案 0 :(得分:3)
如果您只返回一行,则只获取一次。
if ($row = mysql_fetch_array($result))
{
$comments = $row['comments'];
}
答案 1 :(得分:1)
$sql = mysql_query("
SELECT id,user,comments
FROM user
WHERE id='15'
AND user = '15'
LIMIT 1");
LIMIT 1将在第一个结果
后停止查询答案 2 :(得分:0)
当结果集中有多行时,那么只需要在循环中执行它来获取单行,不需要将结果集放在循环中。
你可以这样做..if(mysql_num_rows($result) == 1){
if($row = mysql_fetch_array($result)){
$comments = $row['comments'];
}
}