繁体   English   中英

在计算mysql表的总行数时是否可以避免使用“ AS”参数? (php)

[英]Is it possible to avoid the “AS” parameter when counting total rows of a mysql table? (php)

现在,我使用以下代码来计算表的总行数:

$sql = "SELECT COUNT(*) AS Total FROM MyTable";
$result = mysqli->query($sql);
$numberOfRows = mysqli_fetch_object($result);
$numberOfRows = $numberOfRows->Total;

我尝试转储当我在查询中不使用“ AS”参数并在互联网上进行搜索时得到的不同结果,但是尽管有很多示例,但我发现它们都没有显示代码不使用“ AS”参数直接检索结果。

...

从收到的答案和评论中,我尝试了这两个提供预期结果的代码块:

$sql = "SELECT COUNT(*) FROM MyTable";
$result = mysqli->query($sql);

然后:使用获取数组:

$numberOfRows = $result->fetch_array($result);
$numberOfRows = $numberOfRows[0];

使用提取assoc:

$numberOfRows = $result->fetch_assoc($result);
$numberOfRows = $numberOfRows["COUNT(0)"];

在性能方面,我发现访存数组的性能略好一些(尝试不使用操作码)。

如果不使用AS分配别名,则输出中的列名称将为COUNT(*) 然后,您应该可以使用以下方法检索它:

$numberOfRows = $numberOfRows->{"COUNT(*)"}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM