1. sql語句的使用——查詢每個學生的總分和平均分,有一張表
select sum(grade)總成績,avg(grade) 平均成績from sc where sno in(select sno from sc where sno in('1001','1002','1003','1004','1005'))
2. 用SQL語言查看各個學生的總分
總分=筆試成績+機試成績。
select sno,writtentest,machinetest,writtentest+machinetest 總分 from score;
3. SQL 裡面怎麼計算總分
你設計表的時候 下面有個計算列公式 在公式里寫需要相加的列名相加
4. sql 行轉列、並求總分
問題:假設有張學生成績表(tb)如下:
姓名 課程 分數
張三 語文 74
張三 數學 83
張三 物理 93
李四 語文 74
李四 數學 84
李四 物理 94
想變成(得到如下結果):
姓名 語文 數學 物理
---- ---- ---- ----
李四 74 84 94
張三 74 83 93
-------------------
*/create table tb(姓名 varchar(10) , 課程 varchar(10) , 分數 int)
insert into tb values('張三' , '語文' , 74)
insert into tb values('張三' , '數學' , 83)
insert into tb values('張三' , '物理' , 93)
insert into tb values('李四' , '語文' , 74)
insert into tb values('李四' , '數學' , 84)
insert into tb values('李四' , '物理' , 94)
go--SQL SERVER 2000 靜態SQL,指課程只有語文、數學、物理這三門課程。(以下同)
select 姓名 as 姓名 ,
max(case 課程 when '語文' then 分數 else 0 end) 語文,
max(case 課程 when '數學' then 分數 else 0 end) 數學,
max(case 課程 when '物理' then 分數 else 0 end) 物理
from tb
group by 姓名--SQL SERVER 2000 動態SQL,指課程不止語文、數學、物理這三門課程。(以下同)
declare @sql varchar(8000)
set @sql = 'select 姓名 '
select @sql = @sql + ' , max(case 課程 when ''' + 課程 + ''' then 分數 else 0 end) [' + 課程 + ']'
from (select distinct 課程 from tb) as a
set @sql = @sql + ' from tb group by 姓名'
exec(@sql) --SQL SERVER 2005 靜態SQL。
select * from (select * from tb) a pivot (max(分數) for 課程 in (語文,數學,物理)) b--SQL SERVER 2005 動態SQL。
declare @sql varchar(8000)
select @sql = isnull(@sql + '],[' , '') + 課程 from tb group by 課程
set @sql = '[' + @sql + ']'
exec ('select * from (select * from tb) a pivot (max(分數) for 課程 in (' + @sql + ')) b')---------------------------------/*
問題:在上述結果的基礎上加平均分,總分,得到如下結果:
姓名 語文 數學 物理 平均分 總分
---- ---- ---- ---- ------ ----
李四 74 84 94 84.00 252
張三 74 83 93 83.33 250
*/--SQL SERVER 2000 靜態SQL。
select 姓名 姓名,
max(case 課程 when '語文' then 分數 else 0 end) 語文,
max(case 課程 when '數學' then 分數 else 0 end) 數學,
max(case 課程 when '物理' then 分數 else 0 end) 物理,
cast(avg(分數*1.0) as decimal(18,2)) 平均分,
sum(分數) 總分
from tb
group by 姓名--SQL SERVER 2000 動態SQL。
declare @sql varchar(8000)
set @sql = 'select 姓名 '
select @sql = @sql + ' , max(case 課程 when ''' + 課程 + ''' then 分數 else 0 end) [' + 課程 + ']'
from (select distinct 課程 from tb) as a
set @sql = @sql + ' , cast(avg(分數*1.0) as decimal(18,2)) 平均分 , sum(分數) 總分 from tb group by 姓名'
exec(@sql) --SQL SERVER 2005 靜態SQL。
select m.* , n.平均分 , n.總分 from
(select * from (select * from tb) a pivot (max(分數) for 課程 in (語文,數學,物理)) b) m,
(select 姓名 , cast(avg(分數*1.0) as decimal(18,2)) 平均分 , sum(分數) 總分 from tb group by 姓名) n
where m.姓名 = n.姓名--SQL SERVER 2005 動態SQL。
declare @sql varchar(8000)
select @sql = isnull(@sql + ',' , '') + 課程 from tb group by 課程
exec ('select m.* , n.平均分 , n.總分 from
(select * from (select * from tb) a pivot (max(分數) for 課程 in (' + @sql + ')) b) m ,
(select 姓名 , cast(avg(分數*1.0) as decimal(18,2)) 平均分 , sum(分數) 總分 from tb group by 姓名) n
where m.姓名 = n.姓名')drop table tb
5. sql 語句計算學生總成績
select
學生.學號
as
姓名,
sum(成績.分數)
as
總分
from
學生
left
join
成績
on
成績.學號=學生.學號
group
by
學生.學號
完全手打,若有疑問直接留言,我會持續關注的,保證好評率~
6. sql資料庫怎麼創建查詢總分
這里分享下sql資料庫創建查詢總分的方法。
設備:聯想電腦
系統:win8
軟體:mysql資料庫6.3
1、首先新建一個test資料庫,在資料庫中創建一個data數據表,在表內插入四條測試數據。
7. SQL 怎麼查詢統計學生總分
select sum(分數) as 總分數 from 學生表 where id between 4 and 5
8. sql語句 統計本人選修課程的學分總分多少
SELECT SUM(單門分數) FROM 分數表 WHERE 學生姓名或者學生學號=本人
查出來的就是本人的所有科目加起來的總分。
請採納 謝謝!因為你未提供表和欄位名,就只能這樣寫了不知道你看不看的懂。
9. 請教~用SQL怎樣可以算出總分然後顯示出來
select 學號,姓名,性別,班級,語文成績,英語成績,數學成績,操作 from 表
union all
select 總分,null,null,null,sum(語文成績),sum(數學成績),sum(英語成績),null from 表
10. SQL求總分及平均值
SQL求總分及平均值的方法。
如下參考:
1.打開資料庫軟體,添加資料庫,右鍵點擊並選擇新查詢。