可不可以用一条SQL语句查询多人各自成绩的总和?

作者&投稿:坚若 (若有异议请与网页底部的电邮联系)
可不可以用一条SQL语句查询多人各自成绩的总和?~

查询多人各自成绩的总和sql语句如下:
select name,SUM(score)
from test2
group by name
按姓名分组,查看每个学生的优良中差统计:
SELECT sname, count(snum) 总数,
sum(case when snum<60 then 1 else 0 end) AS 不合格,
sum(case when snum>=60 AND snum<70 then 1 else 0 end) AS 中,
sum(case when snum>=70 AND snum< 90 then 1 else 0 end) AS 良,
sum(case when snum>=90 then 1 else 0 end) AS 优
FROM test.Score
group by sname
;

扩展资料
SQL中Group By的使用:
“Group By”从字面意义上理解就是根据“By”指定的规则对数据进行分组,所谓的分组就是将一个“数据集”划分成若干个“小区域”,然后针对若干个“小区域”进行数据处理。
示例:
select 类别, sum(数量) as 数量之和
from A
group by 类别
这段代码实际上就是分类汇总。
在Access中不可以使用“order by 数量之和 desc”,但在SQL Server中则可以。
需要注意的一点,在select指定的字段要么就要包含在Group By语句的后面,作为分组的依据;要么就要被包含在聚合函数中。

select 性别,sum(成绩) as 总成绩 from 表 group by 性别

查询多人各自成绩的总和sql语句如下:

select name,SUM(score) 

from test2 

group by name

按姓名分组,查看每个学生的优良中差统计:

SELECT sname, count(snum) 总数,

sum(case when snum<60 then 1 else 0 end) AS 不合格,

sum(case when snum>=60 AND snum<70 then 1 else 0 end) AS 中,

sum(case when snum>=70 AND snum< 90 then 1 else 0 end) AS 良,

sum(case when snum>=90 then 1 else 0 end) AS 优

FROM test.Score

group by sname

;

扩展资料

SQL中Group By的使用:

“Group By”从字面意义上理解就是根据“By”指定的规则对数据进行分组,所谓的分组就是将一个“数据集”划分成若干个“小区域”,然后针对若干个“小区域”进行数据处理。

示例:

select 类别, sum(数量) as 数量之和

from A

group by 类别

这段代码实际上就是分类汇总。

在Access中不可以使用“order by 数量之和 desc”,但在SQL Server中则可以。

需要注意的一点,在select指定的字段要么就要包含在Group By语句的后面,作为分组的依据;要么就要被包含在聚合函数中。




数据库查询中,在只查询到一条或者没有数据时,sql语句中的order by是否...
关系数据库会的,只是order by会在瞬间完成 如果你确认是只有1条或者0条,最好不写,毕竟数据库有个分析过程

数据库,sql,查询值的数目与目标字段中的数目不同
那为什么系统仍然报错数目不同呢?请看下列分析:如果是直接在access 查询对象上执行SQL语句的话,请注意,一次只能执行一条SQL语句。目测题主的查询截图中有10条追加查询语句,意图向学生表插入10条记录,但是这些语句之间并没有用英文分号隔离,系统会将那十条语句当做一条语句去执行,这样语句显然违反了...

...如果第一张表有记录,则不查第二张表,通过SQL语句可以实现吗...
上面说的没错,一句话实现不了,用PLSQL的话没有问题,不过实现的东西和你之前的UNION两张表是有区别的,仅仅是想优化一下的话,可以把UNION改成UNION ALL。

SQL 数据库联合查询,其中一张表需要将多个相同ID对应信息横向排列_百度...
这个我遇到过 这么写: A.客户ID,A.客户名称,A.客户备注, B.客户ID,B.联系人,B.联系方式 FROM 表1 A RITHT JOIN 表2 B ON A.客户ID = B.客户ID 出来的效果是:

为什么在sql 2000数据库表中只能输入一条记录
任何一个数据库都是一样的呀,如果你用INSERT INTO TABLE1 VALUES()这种都是只能输入一条的嘛,你可以把你要的数据导到EXCEL或文本, 全部导入到表里去,也可以INSERT INTO TABLE1 SELECT * FROM TABLE2

公司程序用的是sql数据库,用软件能打开数据表格修改里面的数据但是不能...
应该是用户权限不够 换一个权限够的用户 或者修改一下用户权限

请问,如何用一条SQL查询出分页的数据和总记录数啊?MySQL的!不用存储
的确要查询两次的,因为计算总记录数是使用的聚合函数count(),如果你想一起查询出来,就要使用分组,那样也麻烦,对数据库的操作要使用细粒度的操作,可以使用事务来控制两次查询,用同一个connection,这样可以避免两次查询导致两次不同进程之间的连接操作 ...

多张表不关联,怎么用一条SQL语句查询出多张表的数据!!!
可以用视图啊,视图是虚表,可以先封装成一个整体,实际上数据来自各个不同的表。

为什么在SQL语句中 不可以对同一个属性进行逻辑“与”的等值运算_百度...
select * from animal where animal='dog' and animal='cat';可以看到返回空记录集,因为一个动物不可能同时是“狗”和“猫”。跟着再看看 筛选出即是狗还是狗的记录(使用与逻辑),返回结果3 select * from animal where animal='dog' and animal='dog';结果返回一条为狗的记录,因为一个动物...

java一条sql语句最好不要超过多少行
1000行。Java是一门面向对象编程语言,其中一条SQL语句中不宜使用3层以上的嵌套查询,子查询中存在分区列时,子查询的返回结果不能超过1000行,SQL语句长度2MB长度限制SQL语句的最大长度为2MB。1990年代初由詹姆斯高斯林等人开发出Java语言的雏形,最初被命名为Oak。

山南地区13566965000: 可不可以用一条SQL语句查询多人各自成绩的总和? -
占河昊强: 查询多人各自成绩的总和sql语句如下:select name,SUM(score) from test2 group by name 按姓名分组,查看每个学生的优良中差统计:SELECT sname, count(snum) 总数,sum(case when snum<60 then 1 else 0 end) AS 不合格,sum(case ...

山南地区13566965000: 有一张User表,我可不可以用一条sql语句查询出,teacher,student,worker,分别有多少人. -
占河昊强: select T, count(*) from user group by T; T就是 teacher 那一列的名字

山南地区13566965000: 能不能一条sql查询出姓名为'张三'的,以及superId为所有张三的id的记录. -
占河昊强: 没能明白你的意思.superId为所有张三的id组成的字符串的话没有办法用一条语句查出,需要利用变量,使用储存过程实现

山南地区13566965000: 有没有一条SQL语句可以完成column一对多 -
占河昊强: 1.你可以将你的这个查询结果插入到临时表,再从临时表进行查询2.也可以外边套一层,select * from (你的查询结果语句) t where t.PartName like '%敏%'进行查询3.也可以使用with as t(你的查询结果语句)sele

山南地区13566965000: 一张表table,树形结构,id唯一标识,name姓名,pid上级id, 求一条sql语句查询出某人所有下属员工 -
占河昊强: 最好增加一个字段Code,然后用所有父类ID和个人ID组成字符串 比如12/234/3456/7890 其中12为第一层,234为第二层,3456为第三层,7890为第四层本身ID 第三层是这个人的父类ID,第二层是第三层的父类...然后查询的时候,先获取该员工的Code,然后select * from table1 where code like 'Code%';

山南地区13566965000: sql能不能一条语句查询多个条件 -
占河昊强: 可以 比如 select * from table where case1 and case2 用 and 链接,

山南地区13566965000: sql语句一对多表的查询方式怎么写 -
占河昊强: 使用SELECT子句进行多表查询 SELECT a.id,a.user, b.message FROM user AS a,message AS b WHERE a.id=b.id

山南地区13566965000: 能不能在一条SQL语句里,查询两张表 -
占河昊强: select A.username from user1 A ,user2 B where A.username = 'zhangsan' and A.username = B.username

山南地区13566965000: 如何用一条sql语句实现两个表的并集查询 -
占河昊强: 是求并集,sql中用union实现,要求关系R和关系S的属性数目相同,union模式是排重的,用union all保留重复值 select * from r union select * from s

山南地区13566965000: 我是想在一条语句中完成,一条SQL可以有多个SELECT吗? -
占河昊强: 楼上说的对,如果只是想用连接之后的结果来查询,可以这样 select * from (select * from a ,b where a.id=b.id) c where ... 直接把a和b 的结果集作为查询源,是可以的.

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网