2017-05-25 61 views
0

我有一个250 000行的表,其中一列只有数值,其中一些有几千之间的空格,所以像1000等等。需要总结表中的所有行的数字

我想计算250 000行组合的总和。

脚本运行和返回最快的是什么?

它只是一个MySQL查询或我必须用PHP进行计算?

不知从何开始。

+5

'if(!$ code){print“您的代码在哪里?”;}' –

+0

您的字段是否包含'int'格式的数字?如果不是,它的格式是什么? –

+0

SELECT SUM(CONVERT(name_of_column),UNSIGNED INTEGER)) FROM table_name; – waterloomatt

回答

0

尝试类似这样的操作。

<?php 
$db = new mysqli('localhost', 'user', 'pass', 'demo'); 

if($db->connect_errno > 0){ 
    die('Unable to connect to database [' . $db->connect_error . ']'); 
} 

$sql = "SELECT SUM(REPLACE(my_column, ' ', '')) result 
     FROM my_table"; 

if(!$result = $db->query($sql)){ 
    die('There was an error running the query [' . $db->error . ']'); 
} 

while($row = $result->fetch_assoc()){ 
    echo $row['result'] . '<br />'; 
} 
0

您可以使用replace删除空格,然后只是sum的结果。 MySQL会将字符串隐式转换为数字:

SELECT SUM(REPLACE(my_column, ' ', '')) 
FROM my_table 
+0

以及我将如何回应结果? –

+1

你知道如何从PHP运行SQL查询吗? – waterloomatt

+0

是的,我知道。但是,因为这对我来说是新的,那么我真的不知道我应该如何mysql_result看起来像 –