统计每个学生的总成绩
1. 按照人名查出学生的各科成绩以及总成绩并按总成绩排名的sql语句
按照人名查出学生的各科成绩以及总成绩并按总成绩排名的sql语句示例如下:
selectA.name ,
(selectB.scorefromtable_scoreBwhereB.type='数学'andA.id=B.id) as数学 ,
(selectB.scorefromtable_scoreBwhereB.type='语文'andA.id=B.id) as语文,
(selectB.scorefromtable_scoreBwhereB.type='英语'andA.id=B.id)as英语,
(selectSUM(B.score)fromtable_scoreBwhereA.id=B.id)assum_score
fromtable_studentAorderbysum_scoreDESC
以上sql语句首先把学生表和成绩表联合查出每个学生的数学、语文、英语成绩,然后通过selectSUM(B.score)fromtable_scoreBwhereA.id=B.id查出每个学生的总成绩。
最后orderbysum_scoreDESC实现按总成绩倒叙排列。
(1)统计每个学生的总成绩扩展阅读
上述sql语句重点是对as关键字的使用- Alias(别名),通过使用 SQL,可以为列名称和表名称指定别名(Alias)。
表的 SQL Alias 语法
SELECT column_name(s) FROM table_name AS alias_name;
列的 SQL Alias 语法
SELECT column_name AS alias_name FROM table_name;
Alias 实例: 使用表名称别名
假设我们有两个表分别是:"Persons" 和 "Proct_Orders"。我们分别为它们指定别名 "p" 和 "po"。
现在,我们希望列出 "John Adams" 的所有定单。
我们可以使用下面的 SELECT 语句:
SELECT po.OrderID, p.LastName, p.FirstName FROM Persons AS p, Proct_Orders AS poWHERE p.LastName='Adams' AND p.FirstName='John'
2. sql语句的使用——查询每个学生的总分和平均分,有一张表
select sno, sum(grade) as total ,avg(grade) as average
from sc
group by sno
3. 按照科目统计所有班级某一科目所有学生的总成绩的SQL查询语言
selectcourseas'成绩总和',
sum(casewhena='jsd1701'thenscoreelse0end)as'jsd1701',
sum(casewhena='jsd1702'thenscoreelse0end)as'jsd1702'
...
from表格内名容groupbycourse;
4. 输入6个学生,3门课程的成绩,统计每个学生的总成绩,并将此表按总成绩由高到低排序。
1、电脑打开Excel表格,把六个学生的成绩数据给输入表格中。
5. excel根据学生各科成绩统计每个学生总分
1、打开EXCEL文件,输入每个学生的分数。
6. 怎样统计SQL数据库里面每一个学生的各科成绩的总分
。。有哪些表,哪些字段啊
select 学号,课1+课2+课3+课4+课5 as 总成绩 from 成绩表
这种一张表的?
7. 用循环实现统计5个学生的平均成绩和总成绩
/*这个项目的核心是对存放学员信息的结构数组的操作*/
#includestdio.h
/*首先创建一个学员信息的结构*/
struct student
{
int num; //学号
char name[20]; //姓名
float score[3]; //三门课的成绩
float ave; //三门课的平均成绩
}stu[50];//声明一个结构类型的数组
/*定义录入学员信息的录入函数。因为要给结构数组stu[]赋值,
所以是有返回值的,返回类型是一个结构*/
struct student input()
{
struct student in;
int i;
float sum=0;
printf("\n 学号:");
scanf("%d",in.num);//注意,这里的in.num它是一个成员变量,是个变量,所以''别忘了
printf(" 姓名:");
fflush(stdin);
gets(in.name);
printf(" 三门课的成绩 \n");
/*用一个循环来为score[]赋值并累加成绩*/
for(i=0;i3;i++)
{
printf(" 成绩%d:",i+1);
scanf("%f",in.score[i]);
sum+=in.score[i];
}
in.ave=sum/3;//计算出平均成绩
return in;
}
/*定义显示学员信息的函数*/
void display(struct student *s,int n)
{
int i;
printf("\n 学号\t姓名\t平均成绩\n");
for(i=0;in;i++,s++)//指针循环遍历结构数组时,要让指针也++
{
printf(" %d\t%s\t%5.2f\n",s-num,s-name,s-ave);
}
}
/*定义按学员平均成绩排序的函数*/
void sort(struct student *s,int n)
{
int i,j;
struct student d;//定义一个中间交换变量
for(i=0;in;i++)
{
for(j=0;jn-1-i;j++)
{
if((s+j)-ave(s+j+1)-ave)
{ //交换的是结构数组里的结构变量
d=*(s+j);
*(s+j)=*(s+j+1);
*(s+j+1)=d;
}
}
}
}
/*定义插入函数*/
void insert(struct student *s,int n)
{
int i,j;
struct student in;
printf("\n 请输入要插入的学员信息");
in=input();
for(i=0;in;i++,s++)
{
if(s-avein.ave)//前面定义的排序函数是个降序排列,所以寻找一个比插入的平均成绩小的位置
break;
}
if(in)
{
for(j=n;ji;j--)
{
*(s+j)=*(s+j-1);//为插入的结构变量留出位置,其他结构变量往后移一位
}
*(s+i)=in;
}
else//当插入的平均成绩最低时
{
for(j=n;j0;j--)
{
*(s+j)=*(s+j-1);
}
*(s+0)=in;
}
}
/*定义删除函数*/
void delet(struct student *d,int n)
{
int i,j,no;
printf("\n 请输入要删除学员的学号:");
scanf("%d",no);
for(i=0;in;i++,d++)
{
if(d-num==no)
break;
}
if(i=n)
printf("\n 没有该学员。\n");
else
{
d=d-i;
for(j=i;jn;j++)
{
*(d+j)=*(d+j+1);
}
}
}
void main()
{
int i,count=0;//count用来统计输入学员的个数
char ans;
float sum=0;
/*由于不确定学员个数,所以用“回答 y or n ”
来确定是否继续输入学员信息*/
printf("\n 请输入所有学员的信息");
ans='y';
while(ans=='y')
{
if(count=50)
{
stu[count]=input();//调用录入函数
count++;
printf("\n 是否还要输入学员信息?(y/n)");
fflush(stdin);
ans=getchar();
}
else
printf("\n 学员的个数已超过了最多人数50");
}
printf("\n 排序前的学员信息如下:");
display(stu,count);//调用显示学员信息函数,传递的参数是结构数组和学员的个数
sort(stu,count);//调用排序函数
printf("\n 排序后的学员信息如下:");
display(stu,count);
printf("\n 是否要插入新学员?(y/n)");
fflush(stdin);
ans=getchar();
while(ans=='y')
{
insert(stu,count);//调用插入函数
count++;//插入一个,学员的人数也要加一个
printf("\n 是否还要插入新学员?(y/n)");
fflush(stdin);
ans=getchar();
}
printf("\n 插入新学员后的学员信息如下:");
display(stu,count);
printf("\n 是否要删除某个学员?(y/n)");
fflush(stdin);
ans=getchar();
while(ans=='y')
{
delet(stu,count);//调用删除函数
count--;//删除一个,学员的人数也要减一个
printf("\n 是否还要删除某个学员?(y/n)");
fflush(stdin);
ans=getchar();
}
printf("\n 删除某个学员后的学员信息如下:");
display(stu,count);
}
8. 如何用excel计算出每个同学的总分成绩
材料/工具:抄Excel2010
1、首先,打开一个班的学生成绩单。
9. 使用c语言编写程序,分别统计出每个学生的平均成绩。
#include<stdio.h>
#define N 5//这里设置班级人数
void main()
{
int i,sum=0,high=0,score;
float average;
printf("input everyone's score.\n");
for(i=0;i<N;i++)
{
scanf("%d",&score);
sum+=score;
if(score>high) high=score;
}
average=(float)sum/N;
printf("average=%f\n",average);
printf("highest=%d\n",high);
}
这个代码很容易懂。你拿去改下。。我就不给你调试了。这个是实现某班平均成绩然后输出平均成绩最高成绩的,如果采纳我的。我可以给你编一个很通用的
10. sql如何统计全部学生的分数
---第个学员的成绩
select 学号,名称, isnull(语文,0) + isnull(数学,0) + isnull(英语,0) 总成绩 from a left join b on a.学号=b.学号
--各科总成绩
select sum(语文),sum(数学),sum(英语) from b
--总成绩
select sum(语文)+sum(数学)+sum(英语) from b