SQL中一小问题

来源:百度知道 编辑:UC知道 时间:2024/06/08 16:08:55
姓名 英语 数学 生物 物理学
张三 88 67 79 50
李四 90 40 89 69
王五 77 98 52 70
求这张表中每个人的总成绩并按多少排序的语句怎么写

SELECT [姓名],SUM(英语+数学+生物+物理学) [总成绩]
FROM [表名]
ORDER BY [总成绩]

SELECT 姓名, SUM(英语+数学+生物+物理学) as 总成绩 FROM 表1
GROUP BY 姓名
ORDER BY SUM(英语+数学+生物+物理学)

注:表1为你数据库中的表

1楼 2楼不对哦,有聚合函数没有group by。
3楼的可以,但是可以不用sum的哦,呵呵

--姓名 英语 数学 生物 物理学
--张三 88 67 79 50
--李四 90 40 89 69
--王五 77 98 52 70
--求这张表中每个人的总成绩并按多少排序的语句怎么写

declare @t table(姓名 varchar(4),英语 int, 数学 int,生物 int,物理学 int)
insert into @t
select '张三', 88, 67, 79 ,50 union
select '李四', 90, 40, 89, 69 union
select '王五', 77, 98, 52, 70

select * from @t

select *,英语+ 数学 +生物 + 物理学 as 总成绩
from @t
order by 6

---------------------------------------------
(3 个资料列受到影响)
姓名 英语 数学 生物 物理学
---- ----------- ----------- ----------- -----------
王五 77 98 52 70
李四 90 40 89 69<