Pesquisa de site

Remova decimal dos registros e some-os usando uma consulta MySQL


Use a função agregada SUM() junto com REPLACE(). Vamos primeiro criar uma tabela:

mysql> create table DemoTable857(Price varchar(100));
Query OK, 0 rows affected (1.40 sec)

Insira alguns registros na tabela usando o comando insert:

mysql> insert into DemoTable857 values('50.60');
Query OK, 1 row affected (0.18 sec)
mysql> insert into DemoTable857 values('40.30.20');
Query OK, 1 row affected (0.47 sec)
mysql> insert into DemoTable857 values('10.20');
Query OK, 1 row affected (0.69 sec)

Exiba todos os registros da tabela usando a instrução select:

mysql> select *from DemoTable857;

Isso produzirá a seguinte saída:

+----------+
| Price    |
+----------+
| 50.60    |
| 40.30.20 |
| 10.20    |
+----------+
3 rows in set (0.00 sec)

A seguir está a consulta para remover as casas decimais e somar os registros:

mysql> select sum(replace(Price,'.','')) AS SumOfALl from DemoTable857;

Isso produzirá a seguinte saída:

+----------+
| SumOfALl |
+----------+
| 409100   |
+----------+
1 row in set (0.03 sec)

Artigos relacionados: