php - 在带有选定列名的 php 查询中应用 MySQL COUNT()

标签 php mysql count

我正在尝试在查询中应用 COUNT(),并且它的工作方式如下:

$sql = "SELECT id, Title, images, recdate, 'item' AS type FROM ads_list WHERE to_days(now())<=(to_days(recdate)+14)";

我已经尝试过:

1. $sql = "SELECT id, Title, images, recdate, 'item' AS type COUNT(*) FROM ads_list WHERE to_days(now())<=(to_days(recdate)+14)";

2. $sql = "SELECT COUNT(*) id, Title, images, recdate, 'item' AS type FROM ads_list WHERE to_days(now())<=(to_days(recdate)+14)";

3. $sql = "SELECT COUNT(id), Title, images, recdate, 'item' AS type FROM ads_list WHERE to_days(now())<=(to_days(recdate)+14)";

4. $sql = "SELECT id, Title, images, recdate, 'item' AS type FROM ads_list WHERE to_days(now())<=(to_days(recdate)+14) COUNT(*)";

我做错了什么?

最佳答案

Count(*) 是一个分组函数,它返回所选行的计数。您必须对未包含在 group by 子句中的任何列使用 group by 函数。所以,你可以这样做:

SELECT count(*) as 'Count' FROM ads_list WHERE ...

但您不能(直接)按功能选择一组和四个标准列。您想通过 count(*) 实现什么目的?

对于总行数,您可以使用mysql_num_rows($result_resource)。如果您需要行和计数(并且您正在使用标准 mysql 库),这可能是获得您想要的内容的最佳方法。如果您不需要行(仅需要计数),则使用 count(*)。

关于php - 在带有选定列名的 php 查询中应用 MySQL COUNT(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8855863/

相关文章:

php - 为什么 Composer 不使用 OPcache?

php - 网页动态更新

MySQL - 来自一个查询的两条记录集,具有不同的顺序和限制

python - 有没有一种优雅的方法可以在 python 中使用 lxml 来计算 xml 文件中的标记元素?

linux - 基于两列在awk中增加变量

c# - 计算数组中的项目,除了等于 -1 的值

php - 如何让我的 functions.php 在全站可用

PHP、OOP 接口(interface)和抽象

php - Joomla 数据库定制

php - 如何根据 codeigniter 中的特定值显示行数