按顺序查找我表中的1的数量

时间:2010-03-12 12:14:09

标签: php mysql sum sql-order-by

我有一个客户表,在不同的日期对其客户ID进行了记录。 我想找到按降序记录的1的总和。我正在使用MySQL和PHP 感谢

2 个答案:

答案 0 :(得分:0)

正如我说得对,这是简单的sql请求你需要的东西:

SELECT COUNT(id) as total from customers

只需在php中制作:

   $sql="SELECT COUNT(id) from customers";
    $query=mysql_query($sql) or die(mysql_error());
      $res=mysql_fetch_assoc($query);

 $summ=$res['total'];   //<- Your summ (i.e. quantity of rows in table)

顺便说一下,你可以改用mysql_num_rows。

或者更准确地解释一下您需要什么输出。要按日期或任何其他依赖项进行排序,您需要使用WHERE子句和日期比较进行其他请求。

答案 1 :(得分:0)

我的猜测是你想要每个客户标记为1的记录总和并按降序排序?如果是这样,以下应该可以解决问题:

select cust.id, sum(cone.one) as number_ones 
from customers as cust
inner join customer_ones as cone on cone.id=cust.id
group by cust.id
order by number_ones desc

这假设'one'是包含1的列(并且只包含0或1 - 否则您将不得不添加WHERE cone.one = 1),customer是您的customer表,customer_ones是包含您客户的表数据