如何计算mysql查询返回的行数?我想用PHP计算它们

如何计算mysql查询返回的行数?我想用PHP计算它们,php,mysql,database,count,Php,Mysql,Database,Count,我有一个数据库表 连接 id - zone - ageing_with_a - ageing_with_b - ageing_with_c - tatal_ageing - average 1 Abw 5days 1days 2days 8days 2.6days 2 bbb 1days 5days 2days

我有一个数据库表

连接

id - zone - ageing_with_a -  ageing_with_b -  ageing_with_c   -  tatal_ageing  -  average
1     Abw        5days           1days             2days              8days      2.6days 
2     bbb        1days           5days             2days              8days      2.6days 
3     bbb        2days           3days             4days              9days      3days  
4     Abw        3days           2days             6days              11days     3.4days 
5     ccc        4days           4days             6days              14days     4.3days  
现在我想像在这个tanle中一样检索这些数据

id - zone - ageing_with_a - ageing_with_b - ageing_with_c   -  tatal_ageing  -  average
1     Abw         8               3               8                 19           6
2     bbb
3     ccc

希望你能理解我想要什么,有人请帮我谢谢

看看
GROUPBY
函数:

例如:

SELECT zone, SUM(ageing_with_a) , SUM(ageing_with_b) , SUM(ageing_with_c)  , SUM(tatal_ageing) , SUM(average)
FROM connection_td
GROUP BY zone
但我看到数据中有
days
字符串。您必须删除此字符串,然后将结果强制转换(或转换)为数字,以便能够使用SUM函数

类似于SUM(CAST(用_a,'[a-z]+','')替换_)作为十进制数(2,2))的方法就可以做到这一点


或者更好:您可以根据需要将列类型更改为十进制或整数,并停止在其中存储“days”字符串。然后,我在这里给出的第一个查询应该可以工作。

正确的方法是将表列数据类型更改为“INT”,并且只在这些列中存储数字。
然后,像SUM这样的简单查询就可以了。但是首先应该更改列数据类型。

如果要计算,则字段应为整数。但是现在我可以看到它是varchar

请在您的字段中设置整数

试试这个-

SELECT SUM(ageing_with_a), SUM(ageing_with_b), SUM(ageing_with_c) FROM connection_td GROUP BY zone

若要首先添加列值,则必须在数据库中使用列作为整数,并将天数放入数据库中

然后尝试此查询

SELECT SUM(ageing_with_a), SUM(ageing_with_b), SUM(ageing_with_c) FROM connection_td GROUP BY zone

请参阅connection_tb中的区域正在重复,但结果表中的区域不会重复。。。。