SQL实验三简单查询实验报告材料
实验三简单查询(2)
SELECTemployeeNo,employeeName,department,orderNo,customerName,orderDate
FROMEmployee a,OrderMaster b,Customer c
WHEREemployeeNo=salerNoANDb.customerNo=c.customerNoANDyear(birthday)=1973
convert(char(10),orderDate,120)orderDate,quantity,金额=quantity*price
FROMEmployee a,Product b,OrctName='52倍速光驱'ANDb.ProductNo=c.ProductNoANDc.orderNo=d.orderNoAND
SQL语句:
SELECTemployeeNo,employeeName,address,orderNo,customerNo,orderDate
FROMEmployee a,OrderMaster b
WHEREaddressLIKE'%上海%'ANDa.employeeNo=b.salerNO
ORDERBYcustomerNo
查询结果:
2.查找订购了“32M DRAM”的商品的客户编号、客户名称、订单编号、订货数量和订货金额,并按客户编号排序输出。
SQL语句:
SELECTa.customerNo,customerName,b.orderNo,quantity,定货金额=price*quantity
FROMCustomer a,OrderDetail b,OrderMaster c,Product d
SQL语句:
SQL数据库实验三_简单查询(2)解答
实验三简单查询(2)解答实验结果1、查询住址在上海的员工所做的订单,结果输出员工编号、姓名、住址、订单编号、客户编号和订单日期,并按客户编号排序输出。
SQL语句:SELECT employeeNo,employeeName,address,orderNo,customerNo,orderDateFROM Employee,OrderMasterWHERE employeeNo= salerNo AND address like'%上海%'ORDER BY customerNo查询结果:2、查找订购了“32M DRAM”的商品的客户编号、客户名称、订单编号、订货数量和订货金额,并按客户编号排序输出。
SQL语句:SELECT a.customerNo,customerName,b.orderNo,quantity, price*quantity total FROM Customer a,OrderMaster b, OrderDetail c, Product dWHERE a.customerNo=b.customerNo AND b.orderNo=c.orderNo ANDc.productNo=d.productNo AND productName='32M DRAM'ORDER BY a.customerNo查询结果:3、查找与“张小娟”在同一个部门工作的员工姓名、所属部门、性别和出生日期。
SQL语句:SELECT b.employeeName,b.department,CASE b.sexWHEN'M'THEN'男'WHEN'F'THEN'女'ELSE'不详'END sex,CONVERT(CHAR(10),b.birthday,120) birthdayFROM Employee a,Employee bWHERE a.department=b.department AND a.employeeName='张小娟'查询结果:4、查询1973年出生的员工所订购产品的订单,输出结果为员工编号、姓名、所属部门、订单编号、客户名称、订单日期,按员工编号排序编号。
实验三SQL(二)SQL语言进行简单查询实验报告范文
实验三SQL(二)SQL语言进行简单查询实验报告范文实验目的:1.掌握SQL查询语句的一般格式2.掌握简单数据查询操作。
3.熟练掌握各种查询条件的表示。
4.掌握排序和分组操作在SQL语句中的实现。
5.掌握集函数的使用。
实验内容;1.创建学生表tudent、课程表coure和选课表SC,并输入数据(注意数据的完整性。
);(可以使用实验一中已经建立的表和数据)2.对各表中的数据进行不同条件的查询;1)查询全体学生的学号和姓名2)3)4)5)6)7)8)9)查询全体学生的详细记录查询所有选修过课程的学生学号查询考试有不及格的学生学号查询不是信息系(IS)、计算机系(CS)的学生性别、年龄、系别查询选修了4号课的学生学号和成绩,结果按成绩降序排列查询每个课程号和相应的选课人数查询计算机系(CS)的学生姓名、年龄、系别查询年龄18-20岁的学生学号、姓名、系别、年龄;10)查询姓刘的学生情况11)查询既选修1号课程,又选修2号课程的学生学号12)查询学生的姓名和出生年份(今年2003年)13)查询没有成绩的学生学号和课程号14)查询总成绩大于200分的学生学号15)查询每门课程不及格学生人数16)查询不及格课程超过3门的学生学号17)查询年龄在10到19岁之间的学生信息18)查询全体学生情况,按所在系升序排列,同一个系的学生按年龄降序排列19)查询选了1号课程的学生平均成绩20)查询选了3号课程的学生的最高分21)查询每个同学的总成绩实验步骤与过程:1.创建学生表tudent、课程表coure和选课表SC,使用实验一中已经建立的表和数据。
2.并输入数据,设置主键。
3.建立索引及三表之间关系。
4.按照SQL语句格式及题目要求输入语句进行以下查询:1、查询全体学生的学号和姓名;2、查询全体学生的详细记录;3、查询所有选修过课程的学生学号;4、查询考试有不及格的学生学号;5、查询不是信息系(IS)、计算机系(CS)的学生性别、年龄、系别;6、查询选修了4号课的学生学号和成绩,结果按成绩降序排列;7、查询每个课程号和相应的选课人数;8、查询计算机系(CS)的学生姓名、年龄、系别;9、查询年龄18-20岁的学生学号、姓名、系别、年龄;10、查询姓刘的学生情况;11、查询既选修1号课程,又选修2号课程的学生学号;12、查询学生的姓名和出生年份(今年2003年);13、查询没有成绩的学生学号和课程号;14、查询总成绩大于200分的学生学号;15、查询每门课程不及格学生人数;16、查询不及格课程超过3门的学生学号;17、查询年龄在10到19岁之间的学生信息;18、查询全体学生情况,按所在系升序排列,同一个系的学生按年龄降序排列;19、查询选了1号课程的学生平均成绩;20、查询选了3号课程的学生的最高分;21、查询每个同学的总成绩实验结果:利用实验一中所建立的表设置主键,建立索引及三表之间关系。
实验三 数据库中的数据查询及视图操作实验报告
实验三数据库中的数据查询及视图操作实验报告实验三数据库中的数据查询及视图操作实验报告一、实验目的本实验的主要目的是熟悉数据库中的数据查询和视图操作。
通过本实验,我们可以掌握使用SQL语句进行数据查询和创建视图的方法,进一步提高对数据库的操作能力。
二、实验环境本实验使用MySQL数据库管理系统,并在Windows操作系统下进行实验。
三、实验内容本实验主要包括以下内容:1. 数据查询:使用SELECT语句查询数据库中的数据,并进行排序、过滤和聚合操作。
2. 视图操作:创建和删除视图,以及对视图进行查询和更新操作。
四、实验步骤与结果1. 数据查询首先,我们需要连接到数据库,并选择要查询的表。
假设我们选择的表名为"students",包含以下字段:学号、姓名、性别、年龄、班级。
a. 查询所有学生的信息:```sqlSELECT * FROM students;```执行以上SQL语句后,我们可以得到所有学生的信息,包括学号、姓名、性别、年龄和班级。
b. 查询男生的信息:```sqlSELECT * FROM students WHERE 性别 = '男';```执行以上SQL语句后,我们可以得到所有性别为男的学生的信息。
c. 查询年龄小于20岁的学生的姓名和班级:```sqlSELECT 姓名, 班级 FROM students WHERE 年龄 < 20;```执行以上SQL语句后,我们可以得到年龄小于20岁的学生的姓名和班级。
d. 查询学生按照年龄降序排列的结果:```sqlSELECT * FROM students ORDER BY 年龄 DESC;```执行以上SQL语句后,我们可以得到按照年龄降序排列的学生信息。
e. 查询学生按照班级分组,并统计每个班级的人数:```sqlSELECT 班级, COUNT(*) AS 人数 FROM students GROUP BY 班级;```执行以上SQL语句后,我们可以得到每个班级的人数统计结果。
SQL数据库实验报告
一、实验名称:带条件查询二、日期三、实验目的和内容(这是实验报告极其重要的内容。
)1.SQL Server工具的环境和使用;2.利用SELECT语句实现简单的查询需求;3.掌握使用逻辑操作符来抽取基于多个满足条件的记录4.掌握使用范围操作符、列表操作符、模式匹配操作符、为空操作符来抽取满足条件的记录的方法5.掌握使用ORDER BY 从句来以特定的顺序抽取数据的方法6.掌握使用TOP 关键字仅抽取行的前面集合7.掌握使用DISTINCT 关键字消除重复行四、实验过程及结果(给出实验主要的步骤和实验结果,包括算法或代码)1.SELECT EmployeeID,Rate,rank()OVER(ORDER BY Rate desc)AS RANK FROM HumanResources.EmployeePayHistory2.SELECT EmployeeID,Rate,dense_rank()OVER(ORDER BY Rate desc)AS rankFROM HumanResources.EmployeePayHistory3. SELECT Title,convert(char(10),HireDate,2)As'Hire Date'FROM HumanResources.Employee4. SELECT EmployeeID,upper(Title)AsDesignation,datediff(yy,Birthdate,getdate())As AgeFROM HumanResources.Employee WHERE Title='Marketing Manager'OR Title='Marketing Specialist'5.SELECT EmployeeID,EndDate FROM HumanResources.EmployeeDepartmentHistory WHERE EndDate IS NULL6.SELECT EmployeeID,Title,LoginID FROM HumanResources.Employee WHERE Title IN('Recruiter','Stocker')7.SELECT DISTINCT Title FROM AdventureWorks.HumanResources.Employee WHERE Title LIKE'PR%'五、实验体会(包括有疑问的)这次实验,我了解了.SQL Server工具的环境和使用,学习了使用逻辑操作符来抽取基于多个满足条件的记录.,以及使用范围操作符、列表操作符、模式匹配操作符、为空操作符来抽取满足条件的记录的方法使用ORDER BY 从句来以特定的顺序抽取数据的方法等等。
数据库实验报告-SQL语句查询
《数据库原理》实验报告(实验名称:SQL查询语句)一、实验目的数据查询语句是SQL语句的重要组成部分,是编程人员与数据库管理人员必不可少的工具,通过实验达到以下目的:(1)掌握SELECT 语句的基本语法,加深学生对查询语句基本概念的理解。
(2)掌握简单的单表查询。
(3)掌握连接查询。
二、实验内容:实验数据:实验二所建的数据库及表,实验三录入表中的数据。
1、简单查询(1)若干列或行的选择(2)*、distinc、between…and… 、 in、 like等运算符的使用(3)计算列、常量或空值的查询(4)查询结果排序和分组2、连接查询(1)内连接和自身连接(2)外连接(3)复合条件连接(4)多表连接(5)对表和列使用别名三、实验环境SQL server 2000,pc机一台四、程序源码与运行结果1.查询所有学生的全部信息2. 查询全体学生的学号与姓名3 查询年龄在20岁以下的学生姓名及其出生年份,并为出生年份加上标题4 查询选修了课程的学生学号,并消除重复行5 查询年龄在20~23岁的学生信息(用between… and…表示查询条件)6 查询全体学生情况,查询结果按班级编号升序排列,同一班的学生按年龄降序排列7 查询所有姓赵学生的姓名、学号和性别8 查询名字中第2个字为“小”字的学生姓名9 查询电气信息工程学院(dx) 和计算机学院(jsj)的学生(要求:使用IN关键字表示查询条件10 查询没有考试成绩的学生学号和课程号11 查询有2门以上课程是90分以上的学生的学号及(90分以上的)课程数(先用group by 分组,再用Having限定分组条件)12 查询学生总人数13 查询学号为‘’学生的平均成绩和总成绩,并为总成绩和平均成绩取别名。
14 查询c01号课程的最高分数和最低分15 查询没有考试成绩的学生学号和课程号16 查询全体学生的姓名、选修的课程名及成绩17 查询每个学生及其选修课程情况的所有信息(用*表示字段18 查询某门课程考试成绩相同的学生学号和课程名,并为各个表取别名19 查询与“张三”在一个系学习的学生(IN)20 查询选修了“数据结构”的学生学号和姓名五、实验总结列名写错:修改列名:心得体会:通过实验,了解了一些基本的查询操作,会一些的基本操作。
SQL数据库实验报告 实验三
实验3 SQL Server数据表的管理1.实验目的(1)掌握使用SQL Server管理平台和Transact-SQL语句CREA TE TABLE和ALTER TABLE创建和修改表的方法。
(2)掌握在SQL Server管理平台中对表进行插入、修改和删除数据操作的方法。
(3)掌握使用Transact-SQL语句对表进行插入、修改和删除数据操作的方法。
(4)了解SQL Server的常用数据类型。
2.实验内容及步骤(1)启动SQL Server管理平台,在对象资源管理器中展开studentsdb数据库文件夹。
(2)在studentsdb数据库中包含有数据表student_info、curriculum、grade,这些表的数据结构如图1-2至图1-4所示。
图1-2 学生基本情况表student_info图1-3 课程信息表curriculum图1-4 学生成绩表grade(3)在SQL Server管理平台中创建student_info、curriculum表。
(4)在SQL Server 管理平台中,将student_info 表的学号列设置为主键,非空。
(5)使用Transact-SQL语句CREA TE TABLE在studentsdb数据库中创建grade表。
(6)student_info、curriculum、grade表中的数据如图1-5至图1-7所示。
图1-5 student_info的数据图1-6 curriculum的数据图1-7 grade的数据(7)在SQL Server管理平台中为student_info、curriculum、grade表添加数据。
(8)使用Transact-SQL语句INSERT INTO...V ALUES向studentsdb数据库的grade表插入数据:学号为0004,课程编号为0001,分数为80。
(9)使用Transact-SQL语句ALTER TABLE修改curriculum表的“课程编号”列,使之为非空。
SQL数据库实验三_简单查询(1)解答
16.在订单数据库中,根据员工的薪水进行分类显示。(薪水小于2000元的,显示“低收入者”,大于等于2000元小于4000元的,显示“中等收入者”,大于等于4000元的,显示“高收入者”。
SQL语句:
SELECTemployeeNo,employeeName,salary,薪水级别=
CASE
FROMEmployee
WHEREyear(hireDate)=1991
查询结果:
其他:
selectemployeeNo,employeeName,sex,telephone=isnull(telephone,'不详'),
birthday=convert(char(10),birthday,120),year(getdate())-year(birthday)asage
fromEmployee
wheredepartment<>'业务科'anddepartment<>'财务科'
12.查询1991年被雇佣的职工号、姓名、性别、电话号码、出生日期以及年龄,如果电话号码为空,显示“不详”,出生日期按yyyy-mm-dd显示。
SQL语句:
SELECTemployeeNo,employeeName,sex,isnull(telephone,'不详')telephone,CONVERT(CHAR(10),birthday,120)birthday,year(getdate())-year(birthday)age
FROMEmployee
WHEREdepartment='业务科'ordepartment='财务科'
sql查询实验报告
sql查询实验报告SQL查询实验报告一、引言SQL(Structured Query Language)是一种用于管理和操作关系型数据库的语言。
在数据库管理系统中,SQL查询是一项重要的操作,通过使用SQL查询语句可以从数据库中检索所需的数据。
本实验旨在通过实际操作,掌握SQL查询的基本语法和常用技巧。
二、实验目的1. 熟悉SQL查询语句的基本结构和语法;2. 掌握SQL查询中的条件筛选、排序和聚合等操作;3. 学会使用SQL查询语句从数据库中检索所需的数据。
三、实验环境本次实验使用MySQL数据库管理系统,通过MySQL Workbench进行操作。
四、实验步骤1. 连接数据库:打开MySQL Workbench,点击“新建连接”,输入数据库连接信息,成功连接到目标数据库。
2. 创建测试表:创建一个名为“students”的表,包含字段“id”(学生编号)、“name”(学生姓名)、“gender”(学生性别)、“age”(学生年龄)和“score”(学生成绩)。
3. 插入测试数据:向“students”表中插入若干测试数据,包括学生的编号、姓名、性别、年龄和成绩。
4. 执行SQL查询语句:使用SQL查询语句从“students”表中检索所需的数据。
五、实验结果与分析1. 查询所有学生的信息:SELECT * FROM students;通过执行以上查询语句,可以获取到“students”表中所有学生的信息,包括学生的编号、姓名、性别、年龄和成绩。
2. 查询成绩大于80分的学生信息:SELECT * FROM students WHERE score > 80;以上查询语句中的WHERE子句用于筛选成绩大于80分的学生信息,通过执行该语句,可以获取到符合条件的学生的信息。
3. 查询男生的平均成绩:SELECT AVG(score) FROM students WHERE gender = '男';以上查询语句中的AVG函数用于计算符合条件的学生的平均成绩,通过执行该语句,可以获取到男生的平均成绩。
实验三 SQL语言进行简单查询(学生)
实验三SQL语言进行简单查询一、实验目的掌握简单数据查询操作。
二、实验内容使用各种查询条件完成指定的查询操作三、实验步骤1、查询选修了课程的学生人数。
select count(*)from sc;2、查询学生200515004选修课程的总学分数。
select sum(credit)from student,course,scwhere student.sno=sc.sno ando=o andstudent.sno='200515004'3、查所有有成绩的学生学号和课程号。
select*from student,scwhere student.sno=sc.sno andgrade is not null;4、查询年龄在20~23岁(包括20岁和23岁)之间的学生的姓名、系别和年龄select sname,sdept,sagefrom studentwhere sage between 20 and 23;5、查询选修了3号课程的学生的学号及其成绩,查询结果按分数降序排列。
select sno,gradefrom scwhere cno='3'order by grade desc6、求哪些学生还没有被分配系?select sno,snamefrom studentwhere sdept is null;7、求CS系中所有男同学的学生姓名和年龄。
select sname,sagefrom studentwhere sdept='cs'andssex='男';8、我校开设的课程中哪些课程名以“数据”两个字开头?select cnofrom coursewhere sdept like'数据%';9、求哪些学生的姓名中第2个字是“立”?select *from studentwhere sname LIKE'_立%'10、求哪些学生的成绩为优秀,求出该学生的学号及相应的课程号。
实验报告(实验三)
沈阳工程学院
学生实验报告
(课程名称:数据库系统原理)实验题目:数据查询(一)
班级学号姓名
日期地点指导教师
一、实验目的
掌握SQL查询命令:主要针对单表查询。
二、实验环境
Oracle10g数据库系统。
三、实验内容与要求
使用Select命令完成下列数据查询。
简单查询:
⑴查询全体顾客的编号和姓名。
⑵查询全部商品的详细记录。
⑶查询顾客的姓名和出生年份。
⑷查询购买了商品的顾客的编号。
⑸查询职业(g_work)为“教师”的顾客的姓名。
⑹查询“沈阳市”年龄在20岁以下的顾客的编号和年龄。
⑺查询年龄在20—22岁的顾客的编号。
⑻查询“沈阳”、“大连”、“北京”的顾客信息。
⑼查询姓"王"的顾客的信息。
⑽查询购买商品编号为“0001”的顾客的编号和购买数量,结果按顾客编号升序,购买数量降序排列。
⑾查询顾客总人数。
⑿查询购买商品编号为“0001”的一次最高购买量。
⒀查询购买3次以上商品的顾客编号。
四、实验过程及结果分析
五、成绩评定
优良中及格不及格出勤
格式
内容
分析
总评
指导教师:
年月日。
数据库实验3-SQL语言之数据查询(简单查询)
实验三SQL数据查询(简单查询)姓名:学号:专业:网络工程班级:20网络工程同组人:无实验日期:【实验目的与要求】1、熟练掌握SELECT 语句的基本语法格式;2、熟练掌握使用SQL语句进行单表查询,掌握GROUP BY子句、HA VING 子句和集函数;3、熟练掌握使用SQL标准语句和T-SQL扩展语句进行连接查询。
【实验内容】3.0. 实验准备与说明本实验将用到实验二中数据库SalesDB和相应的表及数据,若该数据库及表尚未创建,或数据尚未录入,则请先完成之。
请根据前面实验创建的表结构和数据,完成如下查询。
本实验及后面实验中所用测试数据库中表的字段及含义如下表:表-1 测试数据库表的字段及含义3.1.简单查询(1).查询各种产品的产品编号、产品名称和价格。
请给出相应语句:USE SalesDB;SELECT Pno,Pname,Price FROM Product;请给出运行结果:(2).查询所在城市为“厦门”的客户编号和客户名称,结果中各列的标题分别指定为:“客户编号”和“客户名称”显示。
请给出相应语句:SELECT Cno as客户编号,Cname as客户名称FROM Customer WHERE City='厦门';请给出运行结果:(3).查询各产品编号、名称、库存量和产品总值。
(总值:价格与库存数量的积)请给出相应语句:SELECT Pno,Pname,Price ,Stocks FROM Product;SELECT SUM(Price*Stocks)as产品总值FROM Product;请给出运行结果:(4).查询曾购买过产品的客户编号(不重复)。
请给出相应语句:SELECT Cno FROM Customer;请给出运行结果:(5).查询价格在1000-2000的产品信息,并依价格由低到高的顺序排序。
(请使用Between…and和算术比较运算符分别实现)a.使用Between…and比较实现:请给出相应语句:use SalesDB;select*from Productwhere Price between 1000 and 2000order by Price;请给出运行结果:b.使用算术比较实现:请给出相应语句:use SalesDB;select*from Productwhere Price >= 1000 and Price<=2000order by Price;请给出运行结果:(6).查询产品名称含有“热水器”的产品信息。
实验3 SQL的简单查询功能
实验3 SQL的简单查询功能实验目的学会使用MS SQL SERVER 2000的查询分析器完成SQL的简单查询功能,主要包括单表查询的选择、投影、排序、聚集函数、分组等。
知识点拨:1.查询语句基本格式:2.单表查询;3.选择4.投影5.排序6.聚集函数7.分组查询1.分组查询与选择的比较:实验内容1.掌握SQL查询语句的一般格式;2.学会包括选择、投影、排序、聚集函数、分组等的单表查询;实验步骤1.选择数据库JX;2.以下查询操作使用查询分析器完成:(1)查询所有教师的教工号、姓名和电话号码信息,查询结果列项是中文名;MODIFY PROJECT f:\shuju库原理\项目1.pjxset default to F:\shuju库原理select tno 教师编号,tname 教师姓名 ,photo 教师电话号码;from teacher(2)查询‘计算机’系的所有副教授的基本信息;from teacherlistselect *;from teacher;where porf='副教授'(3)查询所有女同学的姓名及所在的系,显示结果不允许重复出现;select distinct sname,sdept;from Student;where sex='女 '(4)查询各教师的姓名、教工号及工资按95%发放的信息,并将按95%发放的工资列改名为‘预发95%工资’;alter table teacher;add 工资按95发放 char(20)列名更改以后:代码:alter table teacher rename 工资按95发放 to 预发百分之95工资listselect * from teacher(5)检索计算机系总学分在50~100的学生信息,并按学号降序排列;select * from student,score;where student.sno=score.sno and sdept='计算机'and degree成绩>=50 and degree成绩<= 100;order by student.sno desc(6)查询修正后的学分(原学分-1)仍然大于3的课程的代号、名称、原先的学分、修正后的学分;select cno,cname,ccredit学分 from course;where ccredit学分 in (select ccredit学分 from course; where ccredit学分-1>=3)修正后的学分:update course set ccredit学分=ccredit学分-1select cno,cname,ccredit学分 from course(7)查询课程号不为‘1’、‘4’、或‘7’的课程的信息;select * from course;where cno not in('1','4','7')(8)查询所有姓‘张’、或‘刘’或‘高’的学生信息;select * from student;where sname like '张%' or sname like'刘%' or sname like'林%'(9)查询每个系有多少个同学;select sdept,count(sno);from student;group by sdept(10)查询各课程的平均成绩并按成绩降序排列;select cno,avg(degree成绩);from score;group by cno(11)查询有两门课在90分以上的学生学号及90分以上课程数;select sno,count(cno);from score group by sno;having count(*)>=2 and degree成绩>=90(12)统计每门课程的选课人数、平均成绩、最高成绩、最低成绩;select cno,count(sno),avg(degree成绩),max(degree成绩),min(degree成绩);from score group by cno(13)列出课程表中有先行课的课程名。
实验三 查询的sql语句
Sql语句操作单表查询【例3-16】在“学生”表中查询全体学生的学号、姓名、性别和出生日期。
答案:【例3-17】在“教师”表中查询所有的字段信息。
答案:【例3-18】查询教师表中职称为教授的有关信息答案:【例3-19】查询教师表中职称为女教授的有关信息答案:【例3-20】查询“成绩”表中成绩在70-90之间的学号、课程编号和成绩。
答案:【例3-21】查询学生年龄22岁以上的学生记录。
答【例3-22】查询选修了课程编号为“C0601”的学生的学号和成绩,查询结果按成绩降序排列。
答案:多表查询,连接查询【例3-23】查询选修课程编号为“C0601”的课程且成绩在60与80分之间(含60与80分)的所有学生的学号、姓名、课程名及成绩答案:嵌套查询【例3-24】查询课程编号为“C0404”且成绩在90分以上的学生学号和姓名。
答案:操作查询【例3-26】将一个新的学生信息(学号:s01003,姓名:陈国庆,性别:男,生源:江苏,出生日期:1990-10-1,专业编号:p05)添加到学生表中。
答案:【例3-27】修改学生表中学号为”s01003”的生源为“福建”答案:【例3-28】删除学生表中学号为”s01003”的学生记录聚集函数答案:【例3-29】查询“学生”表的学生总人数。
答案:【例3-30】查询学生表中生源来自那些地方答案:【例3-31】计算学号为“s01002”学生的课程平均成绩答案:【例3-32】查询“王小闽”的学生修改的所有课程的总学分。
答案:【例3-33】查询选修课程“c0605”的学生的最高成绩和最低成绩。
Group by 分组答案:【例3-34】查询各课程(按课程号)及相应的选课人数。
答案:【例3-35】查询选修2门以上课程的学生学号。
答案:。
sql语言实验报告[最新版]
sql语言实验报告sql语言实验报告篇一:数据库SQL语句实验报告《数据库原理及应用》实验报告SQL语句部分班级: 11-37-06 学号:姓名:总成绩:实验一熟悉SQL SERVER,数据定义实验实验一成绩:一、实验目的1、利用查询分析器创建数据库2、利用查询分析器用SQL语言定义基本表、索引并进行相关操作二、实验步骤及内容在以下实验中,使用学生-课程数据库,它描述了学生的基本信息、课程的基本信息及学生选修课程的信息。
1.创建学生课程数据库6、在表S上增加“出生日期”属性列。
7、删除表S的“年龄”属性列。
8、删除S姓名列的唯一值约束。
9、修改SC表成绩属性列为精确数字型。
10、在表S上,按“Sno”属性列的唯一值方式建立索引。
11、删除表SC,利用磁盘上保存的.SQL文件重新创建表SC。
12、创建教材P74页习题5中SPJ数据库中的四个关系:S、P、J、SPJ。
三、实验结果:1.创建学生课程数据库create database Studend; 5.将以上创建表S、C、SC的SQL命令以 .SQL文件的形式保存在磁盘上。
PRIMARY KEY, Sname CHARUNIQUE, Ssex CHARprimary key, CnameCHARSQL定义语言实验目的:1.熟练掌握SQL语言进行基本表结构的创建。
2.熟练应用SQL语言进行表结构的修改。
3.掌握SQL语言进行基本表的删除。
4.掌握SQL语言进行索引的建立和删除5.选择具体的数据库管理系统进行实现(Access 或SQL Server)实验内容和要求: 1.切换到Access的SQL视图或者打开SQL Server查询分析器进行定义操作2.用SQL语言CREATE TABLE语句创建学生表student、课程表course和选课表SC;(字段类型及长度参照实验一)3.用SQL语言ALTER语句修改表结构;a)STUDENT表中SNO设为非空和唯一;b)STUDENT表中增加一个字段SBIRTH,类型设置为日期时间类型,增加一个ADDRESS字段,类型为文本(字符);c)删除STUDENT表中ADDRESS字段;d)COURSE表中CNO字段设为非空和唯一;4.重新定义一个简单表,然后用SQL语言DROP语句删除该表结构;5.用SQL语言CREATE INDEX语句定义表STUDENT的SNAME字段的降序索引;6.用SQL语言CREATE INDEX语句定义表SC的GRADE字段的升序索引;7.用SQL语言DROP语句删除索引;8.输入部分数据,并试着修改其中的错误;实验过程与步骤:(1)创建学生表student的实现如下:create table student, ssex char , sage smallint, sdeptchar);(2)创建课程表course的实现如下:create table course, cnamechar); (4)创建选课表sc实现如下:create tablesc); (5)表建完后,就是对表结构的操作,可用drop删除表的某一列,create index 创建索引,用add constraint添加属性等,具体操作详见压缩包对实验内容的实现的命令。
SQL实验三简单查询实验报告
实验报告课程名称数据库原理与应用实验三简单查询实验名称专业年级学号姓名指导教师实验日期表1-4 订单信息(OrderInfo)OrderId UserId CommodityId Amount PayMoney PayWay OrderTime ConfirmSendGoods1yoyo128598邮局汇款2014-03-26012feiyang210500邮局汇款2014-02-06113daxia332397银行转帐2014-01-0811(3)设计数据关系图如下:(4)导入数据--导入数据注意事项,--与插入数据的顺序相同,有主外键关系的,先导主表中的数据,再导子表中的数据--1先导UserInfo或CommoditySort--2再导CommodityInfo 最后导OrderInfo(回答为什么)(5)用SQL语言查询,并对查询结果截图。
--[1]查询UserInfo中全部的行和列。
--[2]查询付款方式为“网上银行”的UserId,PayWay,PayMoney信息。
--查询一下付款的方式不是“网上银行”的订单信息--[3]使用AS关键字来改变结果集中的别名--[4]查询Email为NULL值,UserInfo中的所有信息。
--[5]查询返回限制的行数,使用TOP关键字。
返回性别为1的,前5个用户名及地址。
--[6]在查询的结果中排序,关键字是ORDER BY 升序为ASC,降序为DESC--按购买数量降序,按付款金额升序,(共21条记录)--[7]使用LIKE进行模糊查询--查询用户表中所有用户地址中为四川的用户信息--查询用户表中姓李的用户姓名,地址,电话--[8]BETWEEN ..AND 查询在两个已知值的之间的未知的值--查询订单表中购买数量为2到10之间的数据--查询下单日期不在‘2012-1-1’到‘2013-1-1’之间的订单信息--[9]使用IN在列举值范围内进行查询--查询使用‘网上银行’‘邮局汇款’方式下单的信息--【10】SUM用于对表达式中的列进行求和(只能用于数值型,空值将忽略)--查询商品编号为6的销售总量--按付款方式分别查询商品编号为6的销售总量--【11】AVG求平均值,(只能与数值型一起使用,空值将忽略)(2)use E_marketSelect userid,payway,paymoney From orderinfoWhere payway=‘网上银行’User E_marketSelect *From orderinfoWhere payway!=’网上银行’(3)user E_marketSelect userid as 用户名,paymoney as 付款方式,payway as 付款金额From orderinfo(4)user E_market Select *From userinfo Where email is null(5)use E_marketSelect top 5 userid as 用户名,useraddress as 地址From userinfoWhere gender=1(6)use E_marketSelect userid,payway,amount,paymoney From orderinfoOrder dy amount desc,paymoney asc(7)use E_marketSelect *From userinfoWhere useraddress like ‘四川%’Use E_marketSelect username,useraddress,phone From userinfoWhere username like ‘李%’(8)use E_marketSelect *From orderinfoWhere amount between ‘2’ and ‘10’Use E_marketSelect *From orderinfoWhere ordetime between ‘2012-1-1’ and ‘2013-1-1’(9)use E_marketSelect *From orderinfoWhere payway in (’网上银行’,‘邮局汇款’)(10)use E_marketSelect sum(amount) as 总数,payway From orderinfoWhere commodityid=’6’ group by payway(11)use E_marketSelect avg(sortid)as 类型编号From commoditysortWhere sortname=’图书音像’Use E_marketSelect avg(inprice)as 平均进货价,sortid From commodityinfoWhere sortid=’2’ group by sortid(12) use E_marketSelect max(inprice)as 最高进货价,min(inprice)as 最低进货价From commodityinfoWhere sortid=’1’(13)Use E_market Select count(userid) 人数From userinfo实验总结(包括过程总结、心得体会及实验改进意见等):在查询过程中,稍有不慎就会造成语法错误,需要多熟悉SQL数据库的查询语言,还有注意中文标点的输入也会造成查询的失败,还有空语句的查询也有一些不同之处需要注意,在备份数据库的同时记得要删除原始保存地址,不然会造成数据库二次打开失败和数据迁移不完善的后果。
SQL查询实验报告
SQL查询实验报告实验题目:sql查询——简单查询【实验目的与要求】一、实验目的1. 熟练掌握单表查询的select语法结构;2. 通过观察查询结果, 体会select语句的实际应用。
二、实验要求1.实验前做好上机实验的准备,针对实验内容,认真复习与本次实验有关的知识,完成实验内容的预习准备工作。
2.能认真独立完成实验内容。
3.实验后做好实验总结,根据实验情况完成实验报告。
【实验环境】pc机、windows xp系统+sql server 2005 【实验内容】基于实验一建立的educ 数据库,用transact-sql 语句实现如下查询:1.选修了课程的学生学号;2.计算机系的学生;3.计算机系学生的学号和姓名;4.计算机系和信息系的男生信息;(提示:逻辑运算符的优先级顺序)5.选修上课编号为1且成绩在80-90 之间的学生学号和成绩,并将成绩乘以系数0.75输出;(提示:新输出项要命名列标题)6.没有成绩的学生的学号和上课编号;7.选修上课编号为1或4的学生的学号和成绩,并要求对查询结果按成绩的降序排列,如果成绩相同则按学号的升序排列;(提示:查询输出哪几项)8.1995年1月1日(含)以后出生的学生信息,并按姓氏拼音字母顺序从前往后排列(注:默认排序规则通常是chinese_prc_ci_as,汉字按照汉语拼音的字典顺序来排序:首先按拼音,拼音相同按声调,声调相同按笔画数。
)9.姓李和刘的学生的信息;10.不姓张王李刘的学生的学号、姓名和性别;11.选修课程的学生人数;12.选修上课编号为1的学生的最高分;13.每位学生所修课程的平均分;14.选修两门以上课程的学生;15.总成绩大于200 分的学生的学号和总成绩。
(提示:group by分组统计)【实验方法和步骤】1.新建查询,在查询编辑器中依次按照如上实验内容编写select 语句完成查询。
2.每执行一条查询语句,在查询结果网格中查看执行结果是否正确。
数据库实验三报告_简单查询和连接查询实验
实验三、简单查询和连接查询实验简单查询和连接查询实验是数据库的基本查询操作,简单查询是只涉及到一个表(基本表或视图)的查询,连接查询是涉及两个表以上的数据连接查询。
1.实验内容和实验要求1.1实验目的了解SQL Server查询分析器的使用方法,加深对SQL 和Transaction-SQL语言的查询语句的理解;掌握表的数据简单查询、数据排序和数据连接查询的SQL表达和查询分析操作方法。
1.2实验内容(1)简单查询实验用SQL表达简单查询操作,包括投影、选择条件表达、数据排序和使用临时表等,通过SQL Server 查询分析器输入,并显示正确结果。
(2)连接查询实验用SQL表达连接查询操作,包括等值连接、自然连接、一般连接等,通过SQL Server 查询分析器输入,并显示正确结果。
1.3实验要求(1)简单查询实验在学生-课程库中,用Transaction-SQL语句表示下列操作,并通过查询分析器实现其查询操作:①求数学系学生的学号和姓名;select 学号,姓名from 学生where 所在系='数学系'S7 吴非S8 丁玉S9 赵名②求选修了课程的学生学号;select distinct 学号from 选课S1③求选修了C1课程的学生学号和成绩,并要求对查询结果按成绩的降序排列,如果成绩相同,则按学号的升序排列;select 学号,成绩from 选课where 课程号='C1'order by 成绩desc,学号asc;S2 93S4 89S1 60S3 NULL④求选修了课程C1且成绩在80-90分之间的学生学号和成绩,将成绩乘以系数0.8输出;select 学号,成绩*0.8from 选课where 课程号='C1' and 成绩between 80 and 90;S4 71.2⑤求数学系或计算机系姓张的学生的信息;select *from 学生where 所在系in('数学系','计算机系') and 姓名like '张%';S2 张小红21 男计算机系S4 张三21 男计算机系⑥求缺少了成绩的学生的学号和课程号。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验报告
课程名称数据库原理与应用
实验三简单查询
实验名称
专业
年级
学号
指导教师
实验日期
(4)导入数据
--导入数据注意事项,
--与插入数据的顺序相同,有主外键关系的,先导主表中的数据,再导子表中的数据--1先导UserInfo或CommoditySort
--2再导CommodityInfo 最后导OrderInfo
(回答为什么)
(5)用SQL语言查询,并对查询结果截图。
--[1]查询UserInfo中全部的行和列。
--[2]查询付款方式为“网上银行”的UserId,PayWay,PayMoney信息。
--查询一下付款的方式不是“网上银行”的订单信息
--[3]使用AS关键字来改变结果集中的别名
--[4]查询Email为NULL值,UserInfo中的所有信息。
--[5]查询返回限制的行数,使用TOP关键字。
返回性别为1的,前5个用户名及地址。
实验程序及结果:(1)
use E_market Select *
From
userinfo
(2)use E_market
Select userid,payway,paymoney From orderinfo
Where payway=‘网上银行’
User E_market
Select *
From orderinfo
Where payway!=’网上银行’
(3)user E_market
Select userid as 用户名,paymoney as 付款方式,payway as 付款金额
From orderinfo
(4)user E_market Select *
From userinfo Where email is null
(5)use E_market
Select top 5 userid as 用户名,useraddress as 地址From userinfo
Where gender=1
(6)use E_market
Select userid,payway,amount,paymoney From orderinfo
Order dy amount desc,paymoney asc
(7)use E_market
Select *
From userinfo
Where useraddress like ‘%’
Use E_market
Select username,useraddress,phone From userinfo
Where username like ‘%’
(8)use E_market
Select *
From orderinfo
Where amount between ‘2’and ‘10’
Use E_market
Select *
From orderinfo
Where ordetime between ‘2012-1-1’and ‘2013-1-1’
(9)use E_market
Select *
From orderinfo
Where payway in (’网上银行’,‘邮局汇款’)
(10)use E_market
Select sum(amount) as 总数,payway
From orderinfo
Where commodityid=’6’group by payway
(11)use E_market
Select avg(sortid)as 类型编号From commoditysort Where sortname=’图书音像’
Use E_market
Select avg(inprice)as 平均进货价,sortid From commodityinfo
Where sortid=’2’group by sortid
(12) use E_market
Select max(inprice)as 最高进货价,min(inprice)as 最低进货价From commodityinfo
Where sortid=’1’
(13)Use E_market Select count(userid) 人数From userinfo
实验总结(包括过程总结、心得体会及实验改进意见等):
在查询过程中,稍有不慎就会造成语法错误,需要多熟悉SQL数据库的查询语言,还有注意中文标点的输入也会造成查询的失败,还有空语句的查询也有一些不同之处需要注意,在备份数据库的同时记得要删除原始保存地址,不然会造成数据库二次打开失败和数据迁移不完善的后果。
注:1、报告的项目或设置,可根据实际情况加以补充和调整
2、教师批改学生实验报告应在学生提交实验报告10日。