Sql Server 数据库实验报告_并将结果中各列的标题指定为学号、姓名和 院系。

img
img

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

(2)启动SQL Server Management Studio,在对象资源管理器中,利用图形化的方法修改数据库student,增加数据文件。
其中:数据文件逻辑名student_ data2,操作系统文件的名称为C:\Program Files\Microsoft SQL Server\MSSQL10. MSSQLSERVER\ MSSQL\DATA\student_ data2. ndt,
初始大小为50MB,最大为100MB,以30%的速度增长。
(3)启动SQL Server Management Studio,在对象资源管理器中,利用图形化的方法删除数据库student。
(4)启动SQL Server Management Studio,在SQL编辑器中,利用T-SQL语何
CREATE DATABASE命令创建数据库student.
(5) 启动SQL Server Management Studio,在 SQL编辑器中,利用T-SQL语句ALTER DATABASE命令修改数据库student,增加日志文件。
其中:日志文件逻辑名student_ log2,操作系统文件的名称为 C:\Program Files\Microsoft SQL Server\MSSQL10. MSSQLSERVER\MSSQL\DATA\student_ data2. ldf,初始大小为3MB,最大为50MB,以1M的速度增长。
(6)启动SQL Server Management Studio,在SQL编辑器中,利用T-SQL语句DROPDATABASE命令删除数据库student。

四,实验代码和结果
–创建数据库student
CREATE DATABASE student
ON PRIMARY
(
NAME=student_data,
FILENAME=‘E:\数据库\student_data.mdf’,
SIZE=3,
MAXSIZE= UNLIMITED,
FILEGROWTH=1
)
LOG ON
(
NAME=student_log,
FILENAME=‘E:\数据库\student_log.ldf’,
SIZE= 1,
MAXSIZE= 20,
FILEGROWTH=10%
)
–修改数据库student,增加日志文件
alter database student
add log file
(
NAME=student_log2,
FILENAME=‘E:\数据库\student_log2.ldf’,
SIZE= 3,
MAXSIZE= 50,
FILEGROWTH=1
)
–删除数据库student
drop database student

五,实验总结和体会
除了可以通过对象资源管理器的图形化界面创建数据库外,还可以使用T-SQL语言所提供的CREATE DATABASE语句来创建数据库。通过实验个人认为,后一种方法更加简单有效。

实验三 创建数据表

一,实验目的
(1)了解SQL Server表的结构特点。
(2)了解SQL Server 2008的基本数据类型。
(3)掌握对象资源管理器创建和管理数据表。
(4)掌握T-SQL语句创建和管理数据表。
(5)理解约束的概念。

二,实验内容
(1)在对象资源管理器创建修改和删除数据表。
(2)利用T-SQL语句创建、修改和删除数据表。
(3)创建主键约束、缺省约束、check约束、唯一约束和外键约束。

三,实验步骤
(1)启动SQL Server Management Studio,在对象资源管理器中,利用图形化的方法创建学生信息表stu_info、课程信息表course_info和学生成绩表stu_grade,其结构参考附录A。
(2)启动SQL Server ManagementStudio,在对象资源管理器中,利用图形化的方法对数据表进行修改:
*在数据表stu_info中,增加备注字段,字段名memo,字段类型nvarchar,字段长度
200,允许为空。
*在数据表stu_info中,删除备注字段memo。
*在数据表course_info中,对于字段course_name设置UNIQUE约束。
*在数据表stu_grade中,对于字段grade设置CHECK约束,其取值在0~100之间。
*在数据表stu_grade中,对于字段stu_id设置FOREIGN KEY约束,其取值参考数据 表stu_info中stu_id 字段取值。
(3)启动SQL Server Management Studio,在对象资源管理器中,利用图形化的方法删除数据表stu_grade.
(4)启动SQL Server Management Studio,在 SQL编辑器中,利用T-SQL语句CREATE TABLE命令创建学生信息表stu_info、课程信息表course_info 和学生成绩表
stu_grade,其结构参考附录A。
(5)启动SQL Server Management Studio,在SQL编辑器中,利用T-SQL语句ALTER TABLE命令修改数据表:
*在数据表stu_info中,增加身份证号码字段,字段名code,字段类型char,字段长度
18,允许为空。
*在数据表stu_info中,对于字段code设置UNIQUE约束。
*在数据表stu_info中,删除身份证号码字段code.
*在数据表stu_grade中,对于字段grade设置CHECK约束,其取值在0~100之间,
*在数据表stu_grade中,对于字段course_id 设置FOREIGN KEY约束,其取值参 考数据表course_info中course_id字段取值。
(6)启动SQL Server Management Studio,在SQL编辑器中,利用T-SQL语句DROP TABLE 命令删除数据表stu_info。

四,实验代码和结果
–创建数据表
create table stu_info(
stu_id char(10) not null constraint pk_stu_id primary key, --主键
name nvarchar(20) not null,
birthday date null,
sex nchar(1) null default ‘男’,
address nvarchar(20) null,
mark int null,
major nvarchar(20) null,
sdept nvarchar(20) null,
);
GO
CREATE TABLE course_info(
course_id char(3) NOT NULL constraint pk_course_id primary key, --主键
course_name nvarchar(20) NOT NULL,
course_type nvarchar(20) NULL default ‘考试’,
course_mark tinyint NULL,
course_time tinyint NULL,
pre_course_id char(3) NULL constraint fk_pre_course_id foreign key references course_info(course_id), --外键
);
GO
CREATE TABLE stu_grade(
stu_id char(10) not null CONSTRAINT fk_stu_id FOREIGN KEY REFERENCES stu_info(stu_id), --外键
course_id char(3) not null CONSTRAINT fk_course_id FOREIGN KEY REFERENCES course_info(course_id), --外键
grade tinyint null,
);
–stu_grade:stu_id与course_id合在一起作为主键
GO
ALTER TABLE stu_grade
ADD CONSTRAINT pk_stu_course PRIMARY KEY(stu_id,course_id)
–修改数据表
GO
ALTER TABLE stu_info
ADD code char(18) NULL
GO
ALTER TABLE stu_info
ADD CONSTRAINT un_code UNIQUE --UNIQUE约束:确保某个或某些列(非主键列)没有相同的列值
GO
ALTER TABLE stu_info
DROP COLUMN code
GO
ALTER TABLE stu_grade
ADD CONSTRAINT ck_grade CHECK(grade between 0 and 100) --CHECK约束:限制输入到一列或多 列的值的范围
----删除数据表
–DROP TABLE stu_info

五,实验总结和体会
创建数据表的一般步骤为:首先定义表结构,即给表的每一列取列名,并确定每一列的数据类型、数据长度、列数据是否可以为空等;然后,为了限制某列数据的取值范围,以保证输入数据的正确性和一致性而设置约束;当表结构和约束建立完成之后,最后就可以向表中输入数据了。

实验四 管理表数据

一,实验目的
(1)掌握在对象资源管理器中对数据表进行插人、修改和删除数据的操作。
(2)掌握T-SQL语句对数据表进行插人、修改和删除数据的操作。

二,实验内容
(1)利用对象资源管理器向数据表中添加、修改和删除数据。
(2)使用T-SQL语句向数据表中添加、修改和删除数据。

三,实验步骤
(1)启动SQL Sever Mangement Sudi,在对象资源管理器中,利用图形化的方法向学生信息表stu_info、课程信息表course. info和学生成绩表stu grade中添加数据,其数据
内容参考附录B。
(2)启动SQL Server Management Studio,在对象资源管理器中,利用图形化的方法对
表数据进行修改:
*在数据表stu_info中,将学号(stu_ id)为2007070101同学的籍贯address)改为“河
南洛阳”。
*在数据表stu_ grade中,将成绩(grade)小于60分的所有同学成绩增加10%。
(3)启动SQL Server Management Studio,在对象资源管理器中,利用图形化的方法删除数据表stu_ grade中成绩(grade)小于60分的记录。
(4) 启动SQL Server Management Studio,在SQL编辑器中,利用T-SQL语句INSERT INTO命令向学生信息表stu_ info、 课程信息表course_ info 和学生成绩表stu_grade中添加数据,其数据内容参考附录B。
(5)启动SQL Server Management Studio,在SQL编辑器中,利用T-SQL语句UPDATE命令修改表数据:
*在数据表stu info 中,将学号(stu_ id) 为2007070102同学的院系(sdept)改为“会计 学院”。
*在数据表stu grade中,将成绩(grade)小于60分的所有同学成绩置空。
(6)启动sQL Server Management Studio,在SQL 编辑器中,利用T-SQL语句DELETE命令删除数据表stu info中所有性别(sex)为空的记录。

四,实验代码和结果
–添加表数据
INSERT INTO stu_info(Stu_id,name,sex,birthday,address,mark,major,sdept)
VALUES(‘2007070101’,‘张元’,‘男’,‘1985-10-09’,‘河南许昌’,576,‘计算机科学与技术’,‘信息学院’)
INSERT INTO stu_info(Stu_id,name,sex,birthday,address,mark,major,sdept)
VALUES(‘2007070102’,‘张红’,‘女’,‘1985-01-14’,‘河南开封’,565,‘计算机科学与技术’,‘信息学院’)
INSERT INTO stu_info(Stu_id,name,sex,birthday,address,mark,major,sdept )
VALUES(‘2007070103’,‘王明’,‘男’,‘1986-07-08’,‘河南洛阳’,570,‘计算机科学与技术’,‘信息学院’)
INSERT INTO stu_info(Stu_id,name,sex,birthday,address,mark,major,sdept )
VALUES(‘2007070104’,‘李伟’,‘男’,‘1986-03-11’,‘河南郑州’,564,‘计算机科学与技术’,‘信息学院’)
INSERT INTO stu_info(Stu_id,name,sex,birthday,address,mark,major,sdept )
VALUES(‘2007070201’,‘郑澜’,‘女’,‘1985-12-01’,‘河南平顶山’,567,‘电子商务’,‘信息学院’)
INSERT INTO stu_info(Stu_id,name,sex,birthday,address,mark,major,sdept )
VALUES(‘2007070202’,‘赵恒’,‘男’,‘1986-03-11’,‘河南周口’,566,‘电子商务’,‘信息学院’)
INSERT INTO stu_info(Stu_id,name,sex,birthday,address,mark,major,sdept )
VALUES(‘2007070203’,‘张兰’,‘女’,‘1986-03-11’,‘河南许昌’,571,‘电子商务’,‘信息学院’)
INSERT INTO stu_info(Stu_id,name,sex,birthday,address,mark,major,sdept )
VALUES(‘2007080101’,‘李伟’,‘男’,‘1986-03-11’,‘河南郑州’,578,‘会计学’,‘会计学院’)
INSERT INTO stu_info(Stu_id,name,sex,birthday,address,mark,major,sdept )
VALUES(‘2007080102’,‘钱丽’,‘女’,‘1986-03-11’,‘河南安阳’,573,‘会计学’,‘会计学院’)
INSERT INTO stu_info(Stu_id,name,sex,birthday,address,mark,major,sdept )
VALUES(‘2007080201’,‘孙楠’,‘男’,‘1986-1-19’,‘河南南阳’,578,‘财务管理’,‘会计学院’)
INSERT INTO course_info(course_id,course_name,course_type,course_mark,course_time,pre_course_id)
VALUES(‘701’,‘计算机基础’,‘考试’,3,50,NULL)
INSERT INTO course_info(course_id,course_name,course_type,course_mark,course_time,pre_course_id)
VALUES(‘702’,‘操作系统’,‘考试’,4,50,701)
INSERT INTO course_info(course_id,course_name,course_type,course_mark,course_time,pre_course_id)
VALUES(‘703’,‘计算机网络’,‘考试’,4,50,701)
INSERT INTO course_info(course_id,course_name,course_type,course_mark,course_time,pre_course_id)
VALUES(‘704’,‘数据库原理’,‘考察’,3,50,701)
INSERT INTO course_info(course_id,course_name,course_type,course_mark,course_time,pre_course_id)
VALUES(‘706’,‘Java’,‘考察’,3,40,704)
INSERT INTO course_info(course_id,course_name,course_type,course_mark,course_time,pre_course_id)
VALUES(‘801’,‘宏观经济学’,‘考试’,4,50,NULL)
INSERT INTO course_info(course_id,course_name,course_type,course_mark,course_time,pre_course_id)
VALUES(‘802’,‘初级会计’,‘考试’,4,50,NULL)
INSERT INTO course_info(course_id,course_name,course_type,course_mark,course_time,pre_course_id)
VALUES(‘803’,‘财政学’,‘考试’,3,50,NULL)
INSERT INTO course_info(course_id,course_name,course_type,course_mark,course_time,pre_course_id)
VALUES(‘804’,‘会计电算化’,‘考查’,3,NULL,NULL)
INSERT INTO stu_grade(stu_id,course_id,grade)
VALUES(‘2007070101’,‘701’,89)
INSERT INTO stu_grade(stu_id,course_id,grade)
VALUES(‘2007070101’,‘702’,81)
INSERT INTO stu_grade(stu_id,course_id,grade)
VALUES(‘2007070101’,‘703’,96)
INSERT INTO stu_grade(stu_id,course_id,grade)
VALUES(‘2007070102’,‘701’,85)
INSERT INTO stu_grade(stu_id,course_id,grade)
VALUES(‘2007070102’,‘702’,74)
INSERT INTO stu_grade(stu_id,course_id,grade)
VALUES(‘2007070102’,‘703’,77)
INSERT INTO stu_grade(stu_id,course_id,grade)
VALUES(‘2007070104’,‘701’,91)
INSERT INTO stu_grade(stu_id,course_id,grade)
VALUES(‘2007070104’,‘702’,88)
INSERT INTO stu_grade(stu_id,course_id,grade)
VALUES(‘2007080101’,‘801’,79)
INSERT INTO stu_grade(stu_id,course_id,grade)
VALUES(‘2007080101’,‘802’,91)
INSERT INTO stu_grade(stu_id,course_id,grade)
VALUES(‘2007080102’,‘801’,87)
INSERT INTO stu_grade(stu_id,course_id,grade)
VALUES(‘2007080102’,‘802’,83)
INSERT INTO stu_grade(stu_id,course_id,grade)
VALUES(‘2007080201’,‘803’,75)
INSERT INTO stu_grade(stu_id,course_id,grade)
VALUES(‘2007080201’,‘804’,82)
–修改表数据
GO
UPDATE stu_info
SET sdept='会计学院’WHERE Stu_id =‘2007070102’
GO
DELETE FROM stu_grade WHERE grade<‘60’
–删除stu_info中所有性别(sex)为空的记录
GO
DELETE FROM stu_info WHERE sex=‘男’ and sex=‘女’

五,实验总结和体会
如果向表中所有列都要插入数据时,字段名表可以省略,但必须保证VALUES后的各数据项位置和类型与表结构的定义完全一致,使得输入的数据真实有效。
在插人数据时,对于允许空值的列,可以使用用NUL插入空值;对于具有默认值的列,
可以使用 DEFAULT插人默认值。
INSERT INTO除了能够实现一次插入一条记录以外,也可以通过子查询实现一次插入多条记录。

实验五 简单数据查询

一,实验目的
(1) 掌握SELECT语句的基本语法。
(2)掌握数据汇总的方法。
(3) 掌握SELECT语句的GROUP BY子句的作用和使用方法。
(4)掌握SELECT语句的ORDER BY子句的作用和使用方法。

二,实验内容
(1) SELECT语句的基本使用。
(2)数据汇总。
(3) GROUP BY子句和ORDER BY、COMPUTEBY子句的使用。

三,实验步骤
针对student数据库中,stu_info数据表,course_info数据表和stu_grade数据表,完成下列查询。
(1) SELECT基本使用
查询每个同学的所有数据。
查询每个同学的学号、姓名和院系。
查询学号为2070同学的姓名、性别、籍贯和院系。
查询每个女同学的学号,姓名和院系,并将结果中各列的标题指定为学号、姓名和
院系。
查询计算每个同学的年龄。
查询所有其籍贯含有“阳”的同学的姓名、性别、籍贯。
查询课程编号702,且成绩 在70~80之间的同学的学号。
(2)数据汇总
查询信息学院同学入学平均分。
查询全体同学的入学最高分和最低分。
查询会计学院同学总人数。
查询学号为207070101同学的各门课程总分。
(3) GROUP BY
查询每个院系的总人数。
查询每位同学的平均分。
(4) ORDER BY
将各位同学的信息按入学成绩由高到低排列输出。
查询每个同学的学号、姓名、课程名和成绩信息,并按成绩由低到高排列输出。

四,实验代码和结果
–select 基本使用
GO
SELECT*
FROM stu_info
GO
SELECT*
FROM stu_grade
GO
SELECT*
FROM course_info
GO
SELECT stu_id,name,sdept
FROM stu_info
GO
SELECT name,sex,address,sdept
FROM stu_info
WHERE stu_id=‘2007070103’
GO
SELECT stu_id AS’学号’,name AS’姓名’,sdept AS’院系’
FROM stu_info
WHERE sex=‘女’
GO
SELECT birthday
FROM stu_info
GO
SELECT name,sex,address
FROM stu_info
WHERE address like ‘%阳%’
GO
SELECT grade
FROM stu_grade
WHERE course_id=702 and grade between 70 and 80
–数据汇总
GO
SELECT AVG(mark)as’平均分’
FROM stu_info
WHERE sdept=‘信息学院’
GO
SELECT MAX(mark)as’最高分’,MIN(mark)as’最低分’
FROM stu_info
GO
SELECT COUNT()as’会计学院总人数’
FROM stu_info
WHERE sdept=‘会计学院’
GO
SELECT sum(grade)
FROM stu_grade
WHERE Stu_id=2007070101
–GROUP BY
GO
SELECT sdept,COUNT(
)as’总人数’
from stu_info
group by sdept
GO
SELECT stu_id,AVG(grade)as’平均分’,COUNT()as’课程数’
from stu_grade
group by stu_id
–ORDER BY
GO
SELECT

FROM stu_info
order by mark desc --desc:降序排列
GO
SELECT stu_info.stu_id,name,course_name,grade
FROM stu_info,course_info,stu_grade
WHERE stu_info.Stu_id=stu_grade.Stu_id and stu_grade.course_id =course_info.course_id
order by grade asc --asc:升序(默认)

五,实验总结和体会
实验时要注意查询要求的详细描述,先确定要查询的表然后确定要输出的列和行,如果没有指定输出列,默认为输出所有列。
在数据查询时,经常需要对表中的列进行计算,才能获得所需要的结果。在SELECT
子句中可以使用各种运算符和函数对指定列进行运算
在SQL语言中, ORDER BY子句用于排序。 ORDER BY子句总是在 WHERE子句(如果有的话)后面说明的,可以包含一个或多个列,每个列之间以逗号分隔,可以选择使用ASC/ DESC关键字指定按照升序降序排序。如果没有特别说明値長以升序序列进行排序的。如用于多列进行排序,各列在 ORDER BY子句中的顺序决定了排序过程中的优先级。
使用 GROUP BY子包为每一个组产生一个汇总结果,每个组只返回一行,不返回详细信息。SELECT子句句中指定的列必须是 GROUP BY子句中指定的列,或是和聚合函数起使用。如果包含 WHERE子句,则只对满足 WHERE条件的行进行分组汇总。如果 GROUP BY子句使用关键字ALL,则 WHERE子句将不起作用。

实验六 高级数据查询

一,实验目的
(1)掌握嵌套查询、连接查询的表示。

二,实验内容
(1) 嵌套查询的使用。
(2) 连接查询的使用。

三,实验步骤
针对student数据库中,stu_info数据表,course_info数据表和stu_grade数据表,完成下列查询。
(1)嵌套查询
查询选修702课程的同学的学号、姓名和院系信息。
查询没有选修702课程的同学的学号、姓名和院系信息。
查询比会计学院的同学人学分数都高的同学的学号、姓名、专业和院系信息。
(2)连接查询
查询每个同学的学号、姓名、课程名和成绩信息。
查询人学成绩大于575分的同学姓名和其选课情况(包括课程名称、课程学时和成绩)。

四,实验代码和结果
–嵌套查询
GO
SELECT stu_id,name,sdept
FROM stu_info
WHERE stu_id IN (
SELECT stu_id
FROM stu_grade
WHERE course_id=702
)
GO
SELECT stu_id,name,sdept
FROM stu_info
WHERE stu_id not IN (
SELECT stu_id
FROM stu_grade
WHERE course_id=702
)
GO
SELECT stu_id,name,major,sdept
FROM stu_info
WHERE mark>ALL
(SELECT mark
FROM stu_info
WHERE sdept=‘会计学院’)
AND sdept<>‘会计学院’
–连接查询
GO
SELECT stu_info.Stu_id,name,course_name,grade
FROM stu_info
left outer join stu_grade on stu_info.Stu_id=stu_grade.Stu_id
left outer join course_info on stu_grade.course_id=course_info.course_id
GO
SELECT name,course_name,course_time,grade
FROM stu_info,course_info,stu_grade
WHERE stu_info.Stu_id=stu_grade.Stu_id and stu_grade.course_id =course_info.course_id and mark>575

五,实验总结和体会
表的连接的实现可以通过两种方法:利用 SELECT语句的 WHERE子句。在FROM子句中使用JOIN关键字。由于连接是涉及多个表及其之间的引用,所以列的引用必须明确指出,对于重复的列名必须用表名限定,即 Table_name. Column_name的完整表达方式。
所谓嵌套查询指的是在一个SELECT査询语句中包含另一个(或多个)SELECT查询语句。其中,外层的SELECT查询语句叫外部查询,内层的的SELECT査询语句叫子查询。使用子查询时需注意以下几个问题:子查询可以嵌套多层。子查询需用圆括号括起来。子查询中不能使用COMPUTE[BY]和INTO子句。子查询的SELECT语句中不能使用 Image、text或 ntext数据类型。

实验七 视图

一,实验目的
(1)理解视图的重要性。
(2)掌握在对象资源管理器中创建和管理视图。
(3)掌握T-SQL语句创建和管理视图。

二,实验内容
(1)在对象资源管理器创建、修改和删除视图。
(2)在对象资源管理器使用视图。
(3)利用T-SQL语句创建、修改和删除视图。
(4)利用T-SQL语句使用视图。

三,实验步骤
(1)启动SQL Server Management Studio,在对象资源管理器中,利用图形化的方法创建下列视图:
视图view_male,包含学生信息表中所有男生信息。
视图view_ stu_grade,包含每个同学的学号、姓名、课程名和成绩信息。
视图view_ avg, 包含每个同学的学号、姓名、平均成绩信息。
(2)启动SQL Server Management Studio,在对象资源管理器中,利用图形化的方法对视图v_ male进行修改,只显示信息学院所有男生的信息。
(3)启动SQL Server Management Studio,在对象资源管理器中,利用图形化的方法删除视图view_ male.
(4)启动SQL Server Management Studio,在对象资源管理器中,利用图形化的方法查询视图view_ male 中的记录信息。
(5)启动SQL Server Management Studio,在 SQL编辑器中,利用T-SQL语句CREATE VIEW命令创建下列视图:
视图view. female, 包含学生信息表中所有女生信息。
视图view. count,包含每个院系的名称和学生人数信息。
视图view sum,包含每个同学的学号、姓名、课程总成绩信息。
(6)启动SQL Server Management Studio在SQL编辑器中,利用TSQL语句ALTER VIEW命令修改视图view _female,增加加密性。
(7)启动SQL Server Management Studio,在SQL编辑器中,利用T-SQL语句DROP
VIEW命令删除视图view_female.
(8)启动SQL Server Management Studio,在SQL编辑器中通过视图,利用T-SQL语句查询下列信息:
查询“信息学院”的学生人数。
查询学号2007070101同学的所选课程和课程成绩信息。

四,实验代码和结果
–创建视图
create view view_female
with encryption --加密
as
select*
from stu_info
where sex=‘女’
go
create view view_count(sdept,count)
as
select sdept,count(*) as’学生人数’
from stu_info
group by sdept
go
create view view_sum(学号,姓名,总成绩)
as
select stu_info.stu_id,stu_info.name,sum(grade)
from stu_info left outer join stu_grade
on stu_info.stu_id=stu_grade.stu_id
group by stu_info.stu_id,name
go

img
img

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

.stu_id,stu_info.name,sum(grade)
from stu_info left outer join stu_grade
on stu_info.stu_id=stu_grade.stu_id
group by stu_info.stu_id,name
go

[外链图片转存中…(img-BRg9wE08-1715316274232)]
[外链图片转存中…(img-dVIDbObc-1715316274233)]

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值