mysql中属性为varchar类型的列的值求和?(在线等!) 下面的语句是求和语句:但是sum(列名) 对某一列的值求和,但属性必须是整型select sum(字段)as a from table where .....现在我的列属性为varchar类型,请问怎么求和?请老师指点,比较急!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 select sum(0+字段) as a from table where ..... 建表语句贴一下吧,我怀疑LZ要的不是 sum(),可能是count()... 字段名 字段类型 宽度 说明芯片编号 varchar 20 字符 非NULL芯片批次 varchar 20 字符 非NULL芯片型号 varchar 20 字符 非NULL员工工号 varchar 10 字符 非NULL检测时间 varchar 20 字符 非NULL缺陷类型 varchar 20 字符 非NULL检测项 varchar 10 字符 非NULL检测结果 varchar 6 字符 非NULL错误个数 varchar 10 字符 非NULL错误比例 varchar 20 字符 非NULL现在对错误个数这列求值!! 是COUNT(*)?SELECT 字段名,COUNT(*) FROM TT GROUP BY 字段名 直接用sum就可以啊!mysql> show create table test;+-------+-----------------------------------------------------------+| Table | Create Table |+-------+-----------------------------------------------------------+| test | CREATE TABLE `test` ( `wrong` varchar(20) default NULL) ENGINE=InnoDB DEFAULT CHARSET=utf8 |+-------+-----------------------------------mysql> select sum(wrong) from test;+------------+| sum(wrong) |+------------+| 114 |+------------+1 row in set (0.00 sec) 直接SUM就行了,MYSQL会自动转换啊。或者你提供一下你的错误信息。 建议你列出你的表结构,并提供测试数据以及基于这些测试数据的所对应正确结果。 参考一下这个贴子的提问方式http://topic.csdn.net/u/20091130/20/8343ee6a-417c-4c2d-9415-fa46604a00cf.html 1. 你的 create table xxx .. 语句 2. 你的 insert into xxx ... 语句 3. 结果是什么样,(并给以简单的算法描述) 4. 你用的数据库名称和版本(经常有人在MS SQL server版问 MySQL) 这样想帮你的人可以直接搭建和你相同的环境,并在给出方案前进行测试,避免文字描述理解上的误差。 你的mysql版本是?SUM(expr) 返回expr的和。注意,如果返回的集合没有行,它返回NULL! 求和是对的,但是我建议你把你的VARCHAR修改为整型吧。要不,效率低下。 mysql Got error 1 from storage engine 我的table-cache应该设置多大合适? mysql sql语句整数做过除法之后的排序出了问题? mysql存储过程转换问题 如何建立一个主外键依赖?(mysql) 你会买这本书吗? 我误删除了 user 表,如果不重新安装的话,如何恢复?用的是linux mysql中怎样取前几条记录? 数据库出问题了???急求解答 mysql 数据库 插入中文 变成乱码问题。大神帮帮我! 自设计数据库如何测试 排序问题
芯片编号 varchar 20 字符 非NULL
芯片批次 varchar 20 字符 非NULL
芯片型号 varchar 20 字符 非NULL
员工工号 varchar 10 字符 非NULL
检测时间 varchar 20 字符 非NULL
缺陷类型 varchar 20 字符 非NULL
检测项 varchar 10 字符 非NULL
检测结果 varchar 6 字符 非NULL
错误个数 varchar 10 字符 非NULL
错误比例 varchar 20 字符 非NULL
现在对错误个数这列求值!!
SELECT 字段名,COUNT(*) FROM TT GROUP BY 字段名
+-------+-----------------------------------
------------------------+
| Table | Create Table
|
+-------+-----------------------------------
------------------------+
| test | CREATE TABLE `test` (
`wrong` varchar(20) default NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8 |
+-------+-----------------------------------mysql> select sum(wrong) from test;
+------------+
| sum(wrong) |
+------------+
| 114 |
+------------+
1 row in set (0.00 sec)
建议你列出你的表结构,并提供测试数据以及基于这些测试数据的所对应正确结果。
参考一下这个贴子的提问方式http://topic.csdn.net/u/20091130/20/8343ee6a-417c-4c2d-9415-fa46604a00cf.html
1. 你的 create table xxx .. 语句
2. 你的 insert into xxx ... 语句
3. 结果是什么样,(并给以简单的算法描述)
4. 你用的数据库名称和版本(经常有人在MS SQL server版问 MySQL)
这样想帮你的人可以直接搭建和你相同的环境,并在给出方案前进行测试,避免文字描述理解上的误差。
SUM(expr)
返回expr的和。注意,如果返回的集合没有行,它返回NULL!