这些问题太多了,太荒谬了。然而,即使阅读了很多,我仍然没有达到我想要的结果。
使用PHP,我使用以下查询轮询MySQL数据库
SELECT COUNT(`NumRecip`) AS `Total`
FROM `Messaging`
WHERE `Type`='Response'
AND `datetime`>='2013-09-01 00:00:00'
我还尝试添加GROUP BY NumRecip
并尝试COUNT(*)
,但我得到了结果55.(如果您尝试这个,显然不会是相同的答案)。 55并不是随意的。 55是适合此上下文的行数。答案应该在150到250之间(只是猜测,但无论如何)。我使用了Max(NumRecip)
并得到了66(这是最大顺便说一句),但我想要每个值的全部总和。
长话短说...我想要一个查询将计算所有的2s,3s,6s和66,并获得我的最终答案,而不是55(行数)或66(最大数量)。
我尝试的所有查询:
SELECT COUNT(`NumRecip`) AS `Total`
FROM `Messaging`
WHERE `Type`='Response'
AND `datetime`>='2013-09-01 00:00:00'
-
SELECT COUNT(*) AS `Total`
FROM `Messaging`
WHERE `Type`='Response'
AND `datetime`>='2013-09-01 00:00:00'
GROUP BY `NumRecip`
-
SELECT COUNT(`NumRecip`) AS `Total`
FROM `Messaging`
WHERE `Type`='Response'
AND `datetime`>='2013-09-01 00:00:00'
GROUP BY `NumRecip`
-
SELECT COUNT(*) AS `Total`
FROM `Messaging`
WHERE `Type`='Response'
AND `datetime`>='2013-09-01 00:00:00'
GROUP BY `NumRecip`
-
SELECT MAX(`NumRecip`) AS `Total`
FROM `Messaging`
WHERE `Type`='Response'
AND `datetime`>='2013-09-01 00:00:00'
我可以进行批量查询,执行while($row=mysql_fetch_assoc($query)){
并继续将NumRecip
添加到总变量中,但我假设有一个单查询选项可以执行此操作,并且因此,更快的方式。
答案 0 :(得分:2)
Count仅显示行数。如果要添加所有数字,请使用SUM()
SELECT SUM(`NumRecip`) AS `Total`
FROM `Messaging`
WHERE `Type`='Response'
AND `datetime`>='2013-09-01 00:00:00'