A. 請教~用sql怎樣可以算出總分然後顯示出來
select 學號,姓名,性別,班級,語文成績,英語成績,數學成績,操作 from 表
union all
select 總分,null,null,null,sum(語文成績),sum(數學成績),sum(英語成績),null from 表
B. 按照人名查出學生的各科成績以及總成績並按總成績排名的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實現按總成績倒敘排列。
(2)sql計算入學成績的總分擴展閱讀
上述sql語句重點是對as關鍵字的使用-Alias(別名),通過使用SQL,可以為列名稱和表名稱指定別名(Alias)。
表的SQLAlias語法
SELECTcolumn_name(s)FROMtable_nameASalias_name;
列的SQLAlias語法
SELECTcolumn_nameASalias_nameFROMtable_name;
Alias實例:使用表名稱別名
假設我們有兩個表分別是:"Persons"和"Proct_Orders"。我們分別為它們指定別名"p"和"po"。
現在,我們希望列出"JohnAdams"的所有定單。
我們可以使用下面的SELECT語句:
SELECTpo.OrderID,p.LastName,p.FirstNameFROMPersonsASp,Proct_OrdersASpoWHEREp.LastName='Adams'ANDp.FirstName='John'
C. 在sql計算每個學生的總成績(平時*0.6+期末*0.4),顯示學號,課程號與成績。
例如: 成績表A(學號,課程名稱,平時成績,期末成績)
1.按學生分組查詢總成績
Select 學號,Sum(平時成績)As 平時成績 ,Sum(期末成績) As 期末成績
Group By 學號
2.平時*0.6+期末*0.4),顯示學號,課程號與成績。
Select 學號,Sum(平時成績)*0.6 + Sum(期末成績)*0.4 As 總成績
Group By 學號
3.平時*0.6+期末*0.4),顯示學號,課程號與成績。
Select 學號,課程名稱,Sum(平時成績)*0.6 + Sum(期末成績)*0.4 As 總成績
Group By 學號,課程名稱
因為你沒有給出表,所以亂寫的,
D. 查詢學生總成績的sql語句怎麼編寫
select 學生.學號 as 姓名, sum(成績.分數老沒) as 總分
from 學生
left join 成績 on 成績.學號=學生.學侍森納號
group by 學生.學號
sql語句
更新:update table1 set field1=value1 where 范圍
查找:select * from table1 where field1 like '%value1%' (所有包含'春鉛value1'這個模式的字元串)
排序:select * from table1 order by field1,field2 [desc]
求和:select sum(field1) as sumvalue from table1
平均:select avg(field1) as avgvalue from table1
最大:select max(field1) as maxvalue from table1
最小:select min(field1) as minvalue from table1[separator]
E. access中 用SQL命令創建名為「學生總分」的查詢,求出每個學生的總分、平均分 這個查詢怎麼寫啊 哥 求幫忙
access查詢-》設計
關閉彈出的「顯示表」
此時在「文件下拉菜單」下有個「SQL」點擊它即可進入SQL創建視圖
(如果沒有,在上面窗口上右鍵->SQL視圖)
假設學生成績表(學生ID,成績),在SQL視圖中寫:
SELECT SUM(成績) AS '學生總分',AVG(成績) AS '平均分' FROM STUDENT GROUP BY 學生ID;
F. 1查詢成績表的總分數,平均分,最低分和最高分。用sql語句怎麼寫
---1. 計算每個人的總成績並排名(要求顯示欄位:姓名,總成績)
select name,sum(cast(score as bigint)) as allscore from stuscore group by name order by allscore desc
---2. 計算每個人的總成績並排名(要求顯示欄位: 學號,姓名,總成績)
select stuid,name,sum(cast(score as bigint)) as allscore from stuscore group by stuid,name order by allscore desc
---3. 計算每個人單科的最高成績(要求顯示欄位: 學號,姓名,課程,最高成績)
SELECT t1.stuid,t1.name,t1.subject,t1.score from stuscore t1,(SELECT stuid,max(score) as maxscore from stuscore group by stuid) t2 where t1.stuid=t2.stuid and t1.score=t2.maxscore
---4. 計算每個人的平均成績(要求顯示欄位: 學號,姓名,平均成績)
select distinct t1.stuid,t1.name,t2.avgscore from stuscore t1,(select stuid,avg(cast(score as bigint)) as avgscore from stuscore group by stuid) t2 where t1.stuid=t2.stuid
---5. 列出各門課程成績最好的學生(要求顯示欄位: 學號,姓名,科目,成績)
select t1.stuid,t1.name,t1.subject,t2.maxscore from stuscore t1,(select subject,max(score) as maxscore from stuscore group by subject) t2 where t1.subject=t2.subject and t1.score=t2.maxscore
---6. 列出各門課程成績最好的兩位學生(要求顯示欄位: 學號,姓名,科目,成績)
select distinct t1.* from stuscore t1 where t1.stuid in(select top 2 stuscore.stuid from stuscore where subject = t1.subject order by score desc)order by t1.subject
---7. 統計報表(要求顯示欄位: 學號,姓名,各科成績,總分,平均成績)
select stuid as 學號,name as 姓名,sum(case when subject='語文' then score else 0 end) as 語文,sum(case when subject='數學' then score else 0 end) as 數學,sum(case when subject='英語' then score else 0 end) as 英語,sum(cast(score as bigint)) as 總分,(sum(cast(score as bigint))/count(*)) as 平均分 from stuscore group by stuid,name order by 總分 desc
---8. 列出各門課程的平均成績(要求顯示欄位:課程,平均成績)
select subject,avg(cast(score as bigint)) as avgscore from stuscore group by subject
---9. 列出數學成績的排名(要求顯示欄位:學號,姓名,成績,排名)
select * from stuscore where subject ='數學' order by score desc
---10. 列出數學成績在2-3名的學生(要求顯示欄位:學號,姓名,科目,成績)
select t3.* from(select top 2 t2.* from (select top 3 name,subject,score,stuid from stuscore where subject='數學' order by score desc) t2 order by t2.score) t3 order by t3.score desc
---11. 求出李四的數學成績的排名
declare @tmp table(pm int,name varchar(50),score int,stuid int)
insert into @tmp select null,name,score,stuid from stuscore where subject='數學' order by score desc
declare @id int
set @id=0;
update @tmp set @id=@id+1,pm=@id
select * from @tmp where name='李四'
---12. 統計各科目及格人數
select subject,
(select count(*) from stuscore where score<60 and subject=t1.subject) as 不及格,
(select count(*) from stuscore where score between 60 and 80 and subject=t1.subject) as 良,
(select count(*) from stuscore where score >80 and subject=t1.subject) as 優
from stuscore t1 group by subject
---13.統計如下:數學:張三(50分),李四(90分),王五(90分),趙六(76分)
declare @s varchar(1000)
set @s=''
select @s =@s+','+name+'('+convert(varchar(10),score)+'分)' from stuscore where subject='數學'
set @s=stuff(@s,1,1,'')
print '數學:'+@s
G. sql 語句計算學生總成績
select
學生.學號
as
姓名,
sum(成績.分數)
as
總分
from
學生
left
join
成績
on
成績.學號=學生.學號
group
by
學生.學號
完全手打,若有疑問直接留言,我會持續關注的,保證好評率~
H. 有一個student表,有學號,姓名,科目,成績等欄位,請寫一條sql語句,算出學生的總分數
Mysql 示例:
1. 創建t_student表
CREATETABLE`t_student`(
`id`intNOTNULLAUTO_INCREMENT,--自增ID
`studentID`varchar(20)NULL,--學號
`studentName`varchar(20)NULL,--姓名
`subject`varchar(50)NULL,--科目
`score`doubleNULL,--成績
PRIMARYKEY(`id`)--主鍵設置
);
2. 填充數據
I. sql語句的使用——查詢每個學生的總分和平均分,有一張表
select sum(grade)總成績,avg(grade) 平均成績from sc where sno in(select sno from sc where sno in('1001','1002','1003','1004','1005'))