mysql SQL语句如何将sum()放在where后面做条件怎么写呢?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql SQL语句如何将sum()放在where后面做条件怎么写呢?相关的知识,希望对你有一定的参考价值。

如:表A 有一下字段
a b c
1 2 3
1 3 4
2 1 2
2 2 4
我现在想这样 select a,b,c from A where sum(b)=5 要这样的效果。。就是想将一个字段的总和作为条件查出
这样就会出现一下这样的数据
a b c
1 2 3
1 3 4
在线急等,求高手帮忙解答下。谢谢。

方法如下

写入语句:“select col1,sum(cols2) from table_name group by col1 having sum(col2)>100”

    写入语句可以用where,having代表查询按照col1分组后,sum(col2)大于100。

    SQL即结构化查询语言,是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名。

    SQL语句删除表:drop table tabname--这是将表连同表中信息一起删除但是日志文件中会有记录

    SQL语句创建索引:create [unique] index idxname on tabname(col…)

    SQL基本语句

    sql="select * from 数据表 where字段名like '%字段值%' order by 字段名 [desc]"

    sql="select top 10 * from 数据表 where字段名=字段值 order by 字段名 [desc]"

    sql="select top 10 * from 数据表 order by 字段名 [desc]"

    sql="select * from 数据表 where字段名in ('值1','值2','值3')"

    sql="select * from 数据表 where字段名between 值1 and 值2"

参考技术A 如果是想同一组中的b的总和为5,则是 select * from A where a in (select a from A group by a having sum(b)=5);
如果是想找出任意个b的总和为5,那sql写不出,只能取出所有数据在程序里进行遍历或回溯本回答被提问者和网友采纳
参考技术B sum是聚合函数,select a,b,c这部分是没有什么意义的,聚合函数可以放在having子句中 参考技术C select a,b,c from A
where a in (select a from A group by a having sum(b)=5)

以上是关于mysql SQL语句如何将sum()放在where后面做条件怎么写呢?的主要内容,如果未能解决你的问题,请参考以下文章

如何用sql语句将多行合并成一行

mysql如何实现先查询后更新的sql语句

Java中sql语句的引号问题

千万级大数据的Mysql数据库SQL语句优化

sql语句执行顺序、

MySQL学习----explain查看一条sql 的性能