使用php访问mysql,如何获得只有一个数字的查询结果


Using php to access mysql, how can I get the query result which is only a number?

例如,对于某些查询,如SELECT MAX(字段),查询结果通常只是字段值,而不是返回行。

现在我想要得到的值的字段是整型
由于我是php的初学者,如何从查询结果中获得该值
正如我所做的以下

$query = "SELECT MAX(stringid) FROM XMLString";
$result = mysql_query($query, $link);
echo $result;

然后什么也没有回音。我已经检查了mysqlconnect建立的数据库连接,它没有问题
我在phpMyAdmin的MySQL中尝试了这个查询,那么这个查询也是我想要的吗?

那么,为什么会是这样,以及任何解决方案?

谢谢!

您将始终从SQL查询中检索行,即使只有一行带有一个字段。您可以使用mysql_result:直接检索特定行的特定字段

$query = "SELECT MAX(stringid) FROM XMLString";
$result = mysql_query($query, $link);
echo mysql_result($result, 0, 0);
$query = "SELECT MAX(stringid) as val FROM XMLString";
$result = mysql_query($query, $link);
$rows   = mysql_num_rows($result); 
if($rows > 0) {
  $rstAry = mysql_fetch_array($result);
  echo $rstAry['val'];
}

试试这个

mysql_query没有打印结果。也许试试这个:

echo mysql_result($result);

由于mysql_query返回了一个数据库对象,因此您没有得到任何结果。

您需要使用mysql_fetch_array来处理这个"数据库对象"。此命令从MySQL"数据库对象"中"获取"array。您正在获取的array是您的查询生成的行。在你的情况下,它只是一排。

这是代码:

  1. 此步骤设置您的查询:

    $query = "SELECT MAX(stringid) as val FROM XMLString";

  2. 此步骤将运行查询,并返回数据库对象:

    $result_database_object_whatever = mysql_query($query, $link);

  3. 这一步将处理数据库对象,并为您提供一个查询行的数组:

    $result_array = mysql_fetch_array($query, $link);

  4. 此步骤将回显查询返回的第一行:

    echo $result_array[1];

您可以这样做:

$query = "SELECT MAX(stringid) FROM XMLString";
$result = mysql_query($query, $link);
$fetch = mysql_fetch_assoc($result);
echo $fetch['stringid'];

mysql_fetch_assoc()函数检索关联数组中的数据。

给max一个可以引用的名称会有帮助吗?此外,如果你认为存在语法错误,你可以添加错误来帮助澄清。

$query = "SELECT MAX(stringid) as maxNum FROM XMLString";
$result = mysql_query($query, $link) or die(mysql_error());
echo $result;
相关文章: