众所周知,我们必须对 mysql 查询使用类似 mysql_fetch_assoc 的东西来获取关联数组,然后使用 $row['foo'] 和 $row['bar'] 来获取每个值。
如果我们想从单行返回单列,有没有办法优化查询以获得简单的字符串,这样结果将是一个简单的 var 而不是关联数组?
谢谢。
使用mysql_result
功能
$res = mysql_query(..);
$str = mysql_result($res, 0, 0);
这里$str
包含第一行的第一列。
还要记住,这mysql_result
会将内部结果指针移动到下一行。
注意 mysql_ 扩展名已弃用,您应该使用 mysqli 扩展名或 PDO
$res = mysql_query($sql) or die(mysql_error());
list($val) = mysql_fetch_row($res);
简短的回答:不。
SELECT my_column...
长答案:不,但您可以通过仅返回您正在查找的行( then $row['my_column']
)来稍微优化查询。除此之外,如果你使用 MySQL,你必须把它混为一谈。