我有下表:
+------------------+
| ColumnName |
+------------------+
| 1 Slap |
+------------------+
| 13 Slap |
+------------------+
| 2 Slap |
+------------------+
Run Code Online (Sandbox Code Playgroud)
只有MySQL我怎么能解析ColumnName只抓取数值并将它们全部添加?
如果在上表中执行,则查询的输出应为16.
SELECT SUM(CAST(ColumnName as SIGNED)) FROM TableName
Run Code Online (Sandbox Code Playgroud)
(或者UNSIGNED如果你没有任何负数)
编辑:测试数据以满足怀疑论者.
mysql> select * from testtable;
+---------+
| testcol |
+---------+
| 1 Slap |
| 13 Slap |
| 2 Slap |
+---------+
3 rows in set (0.00 sec)
mysql> select sum(cast(testcol as unsigned)) from testtable;
+--------------------------------+
| sum(cast(testcol as unsigned)) |
+--------------------------------+
| 16 |
+--------------------------------+
1 row in set, 3 warnings (0.00 sec)
mysql>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
254 次 |
| 最近记录: |