大家都知道我们必须使用类似mysql_fetch_assoc的东西来获取一个关联数组,然后使用$ row ['foo']和$ row ['bar']获取每个值。
如果我们想从单行返回单个列,那么有没有办法优化查询以获取一个简单的字符串,这样结果将是一个简单的var而不是一个关联数组?
感谢。
答案 0 :(得分:3)
使用mysql_result
功能
$res = mysql_query(..);
$str = mysql_result($res, 0, 0);
此处$str
包含第一行的第一列。
另请注意,mysql_result
会将内部结果指针移动到指向下一行。
答案 1 :(得分:1)
注意不推荐使用mysql_扩展名,您应该使用mysqli扩展名或PDO
$res = mysql_query($sql) or die(mysql_error());
list($val) = mysql_fetch_row($res);
答案 2 :(得分:1)
答案简短:不。
答案很长:不,但您可以通过仅返回您要查找的行(SELECT my_column...
然后$row['my_column']
)来稍微优化查询。除此之外,如果你使用MySQL,你必须把它搞乱。