mysql中属性为varchar类型的列的值求和?(在线等!)

duangexin521 2010-01-25 11:11:25
下面的语句是求和语句:但是sum(列名) 对某一列的值求和,但属性必须是整型
select sum(字段)as a from table where .....

现在我的列属性为varchar类型,请问怎么求和?请老师指点,比较急!!
...全文
1127 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
懒得去死 2010-02-04
  • 打赏
  • 举报
回复
求和是对的,但是我建议你把你的VARCHAR修改为整型吧。要不,效率低下。
flairsky 2010-02-01
  • 打赏
  • 举报
回复
不要出现非阿拉伯数字就是了
jin75hong 2010-01-29
  • 打赏
  • 举报
回复
可以用,不要出现字符就可以了
ACMAIN_CHM 2010-01-25
  • 打赏
  • 举报
回复
直接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)

这样想帮你的人可以直接搭建和你相同的环境,并在给出方案前进行测试,避免文字描述理解上的误差。

阿_布 2010-01-25
  • 打赏
  • 举报
回复
直接用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)
WWWWA 2010-01-25
  • 打赏
  • 举报
回复
贴记录及要求结果出来看看
duangexin521 2010-01-25
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 wwwwa 的回复:]
是COUNT(*)?
SELECT 字段名,COUNT(*) FROM TT GROUP BY 字段名
[/Quote]

老师你这个是求某列元素的个数啊!!
WWWWA 2010-01-25
  • 打赏
  • 举报
回复
是COUNT(*)?
SELECT 字段名,COUNT(*) FROM TT GROUP BY 字段名
duangexin521 2010-01-25
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 wwwwa 的回复:]
select sum(0+字段) as a from table where .....
[/Quote]

谢谢老师,我先测试一下!
duangexin521 2010-01-25
  • 打赏
  • 举报
回复
字段名 字段类型 宽度 说明
芯片编号 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


现在对错误个数这列求值!!
vipper23 2010-01-25
  • 打赏
  • 举报
回复
建表语句贴一下吧,我怀疑LZ要的不是 sum(),可能是count()...
WWWWA 2010-01-25
  • 打赏
  • 举报
回复
select sum(0+字段) as a from table where .....
skno11 2010-01-25
  • 打赏
  • 举报
回复
你的mysql版本是?
SUM(expr)
返回expr的和。注意,如果返回的集合没有行,它返回NULL!

56,679

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧