From 08777cb6282a2f72d28d9f7a164131f79df61dae Mon Sep 17 00:00:00 2001 From: cyxer1c <1052035978@qq.com> Date: Tue, 30 Mar 2021 11:37:08 +0800 Subject: [PATCH 001/144] =?UTF-8?q?=E6=96=B0=E5=BB=BA=20=E7=AC=AC=E5=8D=81?= =?UTF-8?q?=E4=B8=80=E6=AC=A1=E8=AF=BE=E4=BD=9C=E4=B8=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../.keep" | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/.keep" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/.keep" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/.keep" new file mode 100644 index 0000000..e69de29 -- Gitee From 28a503133d64247f77d28a4199b76ecb436de9f7 Mon Sep 17 00:00:00 2001 From: cyxer1c <1052035978@qq.com> Date: Tue, 30 Mar 2021 11:37:24 +0800 Subject: [PATCH 002/144] =?UTF-8?q?=E6=96=B0=E5=BB=BA=20=E7=AC=AC=E5=8D=81?= =?UTF-8?q?=E4=BA=8C=E6=AC=A1=E8=AF=BE=E4=BD=9C=E4=B8=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../.keep" | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/.keep" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/.keep" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/.keep" new file mode 100644 index 0000000..e69de29 -- Gitee From 102d925bed1dfd66b44eeeb1efe65311a9e41411 Mon Sep 17 00:00:00 2001 From: cyxer1c <1052035978@qq.com> Date: Tue, 30 Mar 2021 11:37:38 +0800 Subject: [PATCH 003/144] =?UTF-8?q?=E6=96=B0=E5=BB=BA=20=E7=AC=AC=E5=8D=81?= =?UTF-8?q?=E4=B8=89=E6=AC=A1=E8=AF=BE=E4=BD=9C=E4=B8=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../.keep" | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 "\347\254\254\345\215\201\344\270\211\346\254\241\350\257\276\344\275\234\344\270\232/.keep" diff --git "a/\347\254\254\345\215\201\344\270\211\346\254\241\350\257\276\344\275\234\344\270\232/.keep" "b/\347\254\254\345\215\201\344\270\211\346\254\241\350\257\276\344\275\234\344\270\232/.keep" new file mode 100644 index 0000000..e69de29 -- Gitee From 7847a774918a4d280d5e23f99585823f56ed1680 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E6=80=9D=E9=94=90?= <812046875@qq.com> Date: Tue, 30 Mar 2021 15:40:09 +0800 Subject: [PATCH 004/144] =?UTF-8?q?=E6=96=B0=E5=BB=BA=20=E9=99=88=E6=80=9D?= =?UTF-8?q?=E9=94=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\351\231\210\346\200\235\351\224\220/.keep" | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\231\210\346\200\235\351\224\220/.keep" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\231\210\346\200\235\351\224\220/.keep" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\231\210\346\200\235\351\224\220/.keep" new file mode 100644 index 0000000..e69de29 -- Gitee From 2b1b1ef210ab8e881d7a72748e34838c855c6f77 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E6=80=9D=E9=94=90?= <812046875@qq.com> Date: Tue, 30 Mar 2021 15:40:26 +0800 Subject: [PATCH 005/144] =?UTF-8?q?=E9=99=88=E6=80=9D=E9=94=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SQLQuery1.sql" | 178 +++++++++++++++ .../SQLQuery2.sql" | 211 ++++++++++++++++++ 2 files changed, 389 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\231\210\346\200\235\351\224\220/SQLQuery1.sql" create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\231\210\346\200\235\351\224\220/SQLQuery2.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\231\210\346\200\235\351\224\220/SQLQuery1.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\231\210\346\200\235\351\224\220/SQLQuery1.sql" new file mode 100644 index 0000000..887f88f --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\231\210\346\200\235\351\224\220/SQLQuery1.sql" @@ -0,0 +1,178 @@ +use master +go + +if exists(select * from sys.databases where name='student') + drop database student +go + +create database student +go + +use student +go + +create table student_info +( + stuID int primary key identity, + stuName nvarchar(20) not null, + stuAge int, + stuSex int check(stuSex in (0,1)), + time datetime +) +go + +create table course_info +( + courseID int primary key identity, + courseName varchar(20) not null, + couseMarks int +) +go + +create table score_info +( + scoreID int primary key identity, + stuID int references student_info(stuID), + courseID int references course_info(courseID), + score int check(score between 0 and 150) +) +go + +--dbcc checkident('student_info', reseed, 1) +insert into student_info values +('Tom', 19, 1, NULL), +('Jack', 20, 0, NULL), +('Rose', 21, 1, NULL), +('Lulu', 19, 1, NULL), +('Lili', 21, 0, NULL), +('abc', 20, 1, '2007-01-07 01:11:36.590') + +--dbcc checkident('course_info', reseed, 1) +insert into course_info values +('JavaBase', 4), +('HTML', 2), +('Javascript', 2), +('SqlBase', 2) +go + +insert into score_info values +(1, 1, 80), +(1, 2, 85), +(1, 4, 50), +(2, 1, 75), +(2, 3, 45), +(2, 4, 75), +(3, 1, 45), +(4, 1, 95), +(4, 2, 75), +(4, 3, 90), +(4, 4, 45) +go + +select * from score_info + +--1.查询出每个学生所选修的课程的数量和所选修的课程的考试的平均分 +select + st.stuName ,count(*) '课程数量', round(avg(cast(score as float)), 1) '平均分' +from + score_info s +join + student_info st +on + s.stuID = st.stuID +group by + st.stuName + + +--2.查询出每门课程的选修的学生的个数和学生考试的总分 +select + c.courseName, count(*) '选修的学生个数', sum(score) '总分' +from + course_info c +join + score_info s +on + c.courseID = s.courseID +group by + c.courseName + + +--3.查询出性别一样并且年龄一样的学生的信息 +select + s1.* +from + student_info s1 +join + student_info s2 +on + (s1.stuID <> s2.stuID) and (s1.stuSex = s2.stuSex) and (s1.stuAge = s2.stuAge) + +--4.查询出学分一样的课程信息 +select + distinct c1.* +from + course_info c1 +join + course_info c2 +on + (c1.courseID <> c2.courseID) and (c1.couseMarks = c2.couseMarks) + + +--5.查询出参加了考试的学生的学号,姓名,课程号和分数 +select + st.stuID, st.stuName, s.courseID, s.score +from + score_info s +join + student_info st +on + s.stuID = st.stuID + +--6.查询出参加了考试的学生的学号,课程号,课程名,课程学分和分数 +select + s.stuID, s.courseID, c.courseName, c.couseMarks, s.score +from + score_info s +join + course_info c +on + c.courseID = s.courseID + +--7.查询出没有参加考试的学生的学号和姓名 +select + st.stuID, st.stuName +from + student_info st +left join + score_info sc +on + sc.stuID = st.stuID +where + sc.scoreID is null + +--8.查询出是周六周天来报到的学生 +select + * +from + student_info +where + DATENAME(dw, time) = '星期六' or DATENAME(dw, time) = '星期日' + +--9.查询出姓名中有字母a的学生的信息 +select + * +from + student_info +where + stuName like '%a%' + +--10.查询出选修了2门课程以上的并且考试平均分在70以上的学生的学号和考试平均分以及选修课程的数量 +select + stuID '学号', round(avg(cast(score as float)), 1) '平均成绩', count(*) '选课数量' +from + score_info +group by + stuID +having + count(*) > 2 and round(avg(cast(score as float)), 1) > 70 + diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\231\210\346\200\235\351\224\220/SQLQuery2.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\231\210\346\200\235\351\224\220/SQLQuery2.sql" new file mode 100644 index 0000000..e592302 --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\231\210\346\200\235\351\224\220/SQLQuery2.sql" @@ -0,0 +1,211 @@ +use master +go + +if exists(select * from sys.databases where name = 'cybercafe_charge_sys') + drop database cybercafe_charge_sys +go + +create database cybercafe_charge_sys +go + +use cybercafe_charge_sys +go + +create table tbl_card +( + id varchar(10) primary key, + [passWord] nvarchar(20) check(len(passWord) between 2 and 20), + balance decimal(10,1), + userName nvarchar(20) +) +go + +create table tbl_computer +( + id varchar(10) primary key, + onUse int check(onUse in (0, 1)), + note text +) +go + +create table tbl_record +( + id varchar(10) primary key, + cardId varchar(10) references tbl_card(id), + ComputerId varchar(10) references tbl_computer(id), + beginTime smalldatetime, + endTime smalldatetime, + fee decimal(10,1) +) +go + +insert into tbl_card values +('0023_ABC', '555', 98, '张军'), +('0025_bbd', 'abe', 300, '朱俊'), +('0036_CCD', '何柳', 100, '何柳'), +('0045_YGR', '0045_YGR', 58, '证验'), +('0078_RJV', '55885fg', 600, '校庆'), +('0089_EDE', 'zhang', 134, '张峻') +go + +insert into tbl_computer values +('02', 0, '25555'), +('03', 1, '55555'), +('04', 0, '66666'), +('05', 1, '88888'), +('06', 0, '688878'), +('B01', 0, '558558') +go + +insert into tbl_record values +('23', '0078_RJV', 'B01', '2007-07-15 19:00:00', '2007-07-15 21:00:00', 20), +('34', '0025_bbd', '02', '2006-12-25 18:00:00', '2006-12-25 22:00:00', 23), +('45', '0023_ABC', '03', '2006-12-23 15:26:00', '2006-12-23 22:55:00', 50), +('46', '0023_ABC', '03', '2006-12-22 15:26:00', '2006-12-22 22:55:00', 6), +('47', '0023_ABC', '03', '2006-12-23 15:26:00', '2006-12-23 22:55:00', 50), +('48', '0023_ABC', '03', '2007-01-06 15:26:00', '2007-01-06 22:55:00', 6), +('55', '0023_ABC', '03', '2006-07-21 15:26:00', '2006-07-21 22:55:00', 50), +('64', '0045_YGR', '04', '2006-12-24 18:00:00', '2006-12-24 22:00:00', 30), +('65', '0025_bbd', '02', '2006-12-28 18:00:00', '2006-12-28 22:00:00', 23), +('98', '0025_bbd', '02', '2006-12-26 18:00:00', '2006-12-26 22:00:00', 23) +go + +--1. 查询出用户名为'张军'的上网卡的上网记录,要求显示卡号,用户名,机器编号、开始时间、结束时间,和消费金额,并按消费金额降序排列 +select + tc.id '卡号', tc.userName '用户名', tr.ComputerId '机器编号', tr.beginTime '开始时间', tr.endTime '结束时间', tr.fee '消费金额' +from + tbl_card tc +join + tbl_record tr +on + tc.id = tr.cardId +where + tc.userName = '张军' +order by + tr.fee desc + +--2. 查询出每台机器上的上网次数和消费的总金额 +select + ComputerId, count(*) '上网次数', sum(fee) '消费总金额' +from + tbl_record +group by + ComputerId + +--3. 查询出所有已经使用过的上网卡的消费总金额 +select + cardId, sum(fee) '消费总金额' +from + tbl_record +group by + cardId + +--4. 查询出从未消费过的上网卡的卡号和用户名 +select + tc.id, tc.userName +from + tbl_card tc +left join + tbl_record tr +on + tr.cardId = tc.id +where + tr.id is null + +--5. 将密码与用户名一样的上网卡信息查询出来 +select + * +from + tbl_card t1 +join + tbl_card t2 +on + (t1.id = t2.id) and (t1.[passWord] = t2.userName) + + +--6. 查询出使用次数最多的机器号和使用次数 +-- 1 +select + ComputerId, count(*) '使用次数' +from + tbl_record +group by + ComputerId +having + count(*) = (select max(t.使用次数) from (select ComputerId, count(*) '使用次数' from tbl_record group by ComputerId) t) + +--2 +--create view v_count +--as +--select +-- ComputerId, count(*) '使用次数' +--from +-- tbl_record +--group by +-- ComputerId +--go + +--select +-- * +--from +-- v_count v1 +--where +-- v1.使用次数 = (select max(使用次数) from v_count) + +--7. 查询出卡号是以'ABC'结尾的卡号,用户名,上网的机器号和消费金额 +select + tc.id, tc.userName, tr.ComputerId, tr.fee +from + tbl_record tr +join + tbl_card tc +on + tr.cardId = tc.id +where + tr.cardId like '%ABC' + + +--8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select + tc.id, tc.userName, tr.ComputerId, tr.beginTime, tr.endTime, tr.fee +from + tbl_record tr +join + tbl_card tc +on + tr.cardId = tc.id +where + DATENAME(dw, tr.beginTime) in ('星期六','星期日') + +--9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select + tc.id, tc.userName, tr.ComputerId, tr.beginTime, tr.endTime, tr.fee +from + tbl_record tr +join + tbl_card tc +on + tr.cardId = tc.id +where + DATEDIFF(HH, tr.beginTime, tr.endTime) > 12 + +--10. 查询除消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select + tc.id, tc.userName, tr.ComputerId, tr.beginTime, tr.endTime, tr.fee +from + tbl_record tr +join + tbl_card tc +on + tr.cardId = tc.id +where + tr.fee in ( + select + distinct top 3 fee + from + tbl_record + order by + fee desc + ) +order by + tr.fee desc -- Gitee From 9ec29f9f72d490da0b4b4f0b6339cb8c93fcf3ff Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=8F=B6=E8=AF=9A?= <1183851798@qq.com> Date: Tue, 30 Mar 2021 17:40:05 +0800 Subject: [PATCH 006/144] =?UTF-8?q?=E5=8F=B6=E8=AF=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\344\275\234\344\270\2321.sql" | 78 +++++++++++++++++++ 1 file changed, 78 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\344\275\234\344\270\2321.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\344\275\234\344\270\2321.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\344\275\234\344\270\2321.sql" new file mode 100644 index 0000000..4cbd238 --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\344\275\234\344\270\2321.sql" @@ -0,0 +1,78 @@ +use master +go +create database Student +use Student +create table stuInfo +( + stuID int primary key identity(1,1), + stuName nvarchar(10) not null, + stuAge nvarchar(30) not null, + stuSex nvarchar(2) not null, + [time] datetime +) +insert into stuInfo values('Tom',19,'男',null),('Jack',20,'女',null), +('Rose',21,'男',null),('LUlu',19,'男',null),('Lili',21,'女',null),('abc',20,'男','2007-01-07 01:11:36.590') + +create table Course +( + courseID int primary key identity(1,1), + courseName nvarchar(10) not null, + courseMarks int not null +) + +insert into Course values('JavaBase',4),('HTML',2),('JavaScript',2),('SqlBase',2) + + +create table Score +( + scoreID int primary key identity(1,1), + stuID int references stuInfo(stuID) not null, + courseID int references Course(courseID) not null, + score int not null +) + +insert into Score values(1,1,80),(1,2,85),(1,4,50), +(2,1,75),(2,3,45),(2,4,75), +(3,1,45),(4,1,95),(4,2,75),(4,3,90),(4,4,45) + +select * from stuInfo +select * from Course +select * from Score + +--1.查询出每个学生所选修的课程的数量和所选修的课程的考试的平均分 + select st.stuID ,stuName,COUNT(courseID) 课程数量, AVG(score) 考试平均分 from stuInfo st + inner join Score s on st.stuID=s.stuID + group by st.stuID,stuName +--2.查询出每门课程的选修的学生的个数和学生考试的总分 + select st.stuID ,stuName,COUNT(courseID) 课程数量, sum(score) 考试总分 from stuInfo st + inner join Score s on st.stuID=s.stuID + group by st.stuID,stuName +--3.查询出性别一样并且年龄一样的学生的信息 + select s1.* from stuInfo s1 + inner join stuInfo s2 + on (s1.stuSex=s2.stuSex) and (s1.stuAge=s2.stuSex) +--4.查询出学分一样的课程信息 + select distinct c1.* from Course c1 + inner join Course c2 + on (c1.courseID<>c2.courseID) and (c1.courseMarks=c2.courseMarks) +--5.查询出参加了考试的学生的学号,姓名,课程号和分数 + select st.stuID 学号,st.stuName 姓名, sc.courseID 课程号,sc. score 分数 from stuInfo st + inner join Score sc + on st.stuID=sc.stuID +--6.查询出参加了考试的学生的学号,课程号,课程名,课程学分和分数 + select sc.stuID,sc.courseID,courseName,courseMarks, score from Score sc + inner join Course c + on sc.courseID=c.courseID +--7.查询出没有参加考试的学生的学号和姓名 + select st.stuID,stuName from stuInfo st + left join Score sc + on st.stuID=sc.stuID + where sc.scoreID is null +--8.查询出是周六周天来报到的学生 + select * from stuInfo where DATENAME(DW,time)='星期六'or DATENAME(DW,time)='星期日' +--9.查询出姓名中有字母a的学生的信息 + select * from stuInfo where stuName like '%a%' +--10.查询出选修了2门课程以上的并且考试平均分在70以上的 学生的学号和考试平均分以及选修课程的数量 + select stuID '学号', avg(score) 平均分,COUNT(*) 选课数量 from score + group by stuID + having COUNT(*)>2 and avg(score)>70 \ No newline at end of file -- Gitee From 4bc879a4ebdb69d19db1cd33a94c56331a1f3c5f Mon Sep 17 00:00:00 2001 From: yinchenxu <474746235@qq.com> Date: Tue, 30 Mar 2021 17:56:09 +0800 Subject: [PATCH 007/144] =?UTF-8?q?=E6=AE=B7=E6=99=A8=E6=97=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../1.sql" | 23 ++++ .../2.sql" | 101 ++++++++++++++++++ 2 files changed, 124 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\256\267\346\231\250\346\227\255/1.sql" create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\256\267\346\231\250\346\227\255/2.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\256\267\346\231\250\346\227\255/1.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\256\267\346\231\250\346\227\255/1.sql" new file mode 100644 index 0000000..5c3161a --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\256\267\346\231\250\346\227\255/1.sql" @@ -0,0 +1,23 @@ +select * from StuInfo +select * from CourseInfo +select * from ScoreInfo +--1.查询出 每个学生 所选修的课程的 数量和 所选修的课程的考试的 平均分 +select S.StuID 学生ID , COUNT(*) 数量 , AVG(Score) 平均分 from StuInfo S inner join ScoreInfo I on S.StuID=I.StuID group by S.StuID +--2.查询出 每门课程 的选修的学生的 个数 和学生考试的 总分 +select C.CourseID 课程ID , COUNT(*) 个数 , SUM(Score) 总分 from CourseInfo C inner join ScoreInfo I on C.CourseID=I.CourseID group by C.CourseID +--3.查询出 性别一样 并且 年龄一样 的学生的信息 +select * from StuInfo S,StuInfo I where S.StuAge=I.StuAge AND S.StuSex=I.StuSex and S.StuID<>I.StuID +--4.查询出 学分一样 的 课程信息 +select * from CourseInfo C,CourseInfo I where C.CourseMarks=I.CourseMarks and C.CourseID<>I.CourseID +--5.查询出参加了考试的学生的学号,姓名,课程号和分数 +select S.StuID 学生学号 , StuName 姓名 , C.CourseID 课程号 , Score 分数 from ScoreInfo S inner join StuInfo I on S.StuID=I.StuID inner join CourseInfo C on S.CourseID=C.CourseID group by S.StuID,StuName,C.CourseID,Score +--6.查询出参加了考试的学生的学号,课程号,课程名,课程学分和分数 +select S.StuID 学生学号 , C.CourseID 课程号 , CourseName 课程名, CourseMarks 课程学分 , Score 分数 from ScoreInfo S inner join StuInfo I on S.StuID=I.StuID inner join CourseInfo C on S.CourseID=C.CourseID group by S.StuID,C.CourseID,CourseName,CourseMarks,Score +--7.查询出没有参加考试的学生的学号和姓名 +select S.StuID 学号 , StuName 姓名 from ScoreInfo I right join StuInfo S on I.StuID=S.StuID where Score is null or Score='' +--8.查询出是周六周天来报到的学生 +select * from StuInfo where datename(weekday,StuTime)='星期六' or datename(weekday,StuTime)='星期日' +--9.查询出姓名中有字母a的学生的信息 +select * from StuInfo where StuName like '%a%' or StuName like '%A%' +--10.查询出选修了2门课程以上的并且考试平均分在70以上的学生的学号和考试平均分以及选修课程的数量 +select S.StuID 学号 , COUNT(*) 课程数量 , AVG(Score) 平均分 from ScoreInfo I inner join StuInfo S on I.StuID=S.StuID group by S.StuID having COUNT(*)>2 and AVG(Score)>70 \ No newline at end of file diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\256\267\346\231\250\346\227\255/2.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\256\267\346\231\250\346\227\255/2.sql" new file mode 100644 index 0000000..ae9f2a1 --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\256\267\346\231\250\346\227\255/2.sql" @@ -0,0 +1,101 @@ +use master +go +create database TBL +on +( + name='TBL', + filename='D:\SQL\TBL.mdf', + size=5MB, + maxsize=20MB, + filegrowth=10% +) +log on +( + name='TBL_log', + filename='D:\SQL\TBL_log.ldf', + size=5MB, + maxsize=20MB, + filegrowth=10% +) +go + +use TBL +go +create table TBL_Card +( + CardID char(30) primary key not null, + PassWord varchar(50) not null, + Balance money , + UserName nvarchar(20) +) + +create table TBL_Computer +( + CID char(30) primary key , + OnUse char(1) check(OnUse in(1,0)), + note text +) + +create table TBL_Record +( + RID int primary key , + CardID char(30) references TBL_Card(CardID), + CID char(30) references TBL_Computer(CID), + BeginTime datetime, + Endtime datetime, + fee money +) +go + +insert into TBL_Card values +('0023_ABC','555',98,'张军'), +('0025_bbd','abe',300,'朱俊'), +('0036_CCD','何柳',100,'何柳'), +('0045_YGR','00445_YGR',58,'证验'), +('0078_RJV','55885fg',600,'校庆'), +('0089_EDE','zhang',134,'张俊') + +insert into TBL_Computer values +('02','0','25555'), +('03','1','55555'), +('04','0','66666'), +('05','1','88888'), +('06','0','688878'), +('B01','0','558558') + +insert into TBL_Record values +(23,'0078_RJV','B01','2007-07-15 19:00:00','2007-07-15 21:00:00',20), +(34,'0025_bbd','02','2006-12-25 18:00:00','2006-12-25 22:00:00',23), +(45,'0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:25:00',50), +(46,'0023_ABC','03','2006-12-23 15:26:00','2006-12-22 22:55:00',6), +(47,'0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), +(48,'0023_ABC','03','2007-01-06 15:26:00','2007-01-06 22:55:00',6), +(55,'0023_ABC','03','2006-07-21 15:26:00','2006-07-21 22:55:00',20), +(64,'0045_YGR','04','2006-12-24 18:00:00','2006-12-24 22:00:00',3), +(65,'0025_bbd','02','2006-12-28 18:00:00','2006-12-28 22:00:00',23), +(98,'0025_bbd','02','2006-12-26 18:00:00','2006-12-26 22:00:00',23) +go + +select * from TBL_Card +select * from TBL_Computer +select * from TBL_Record +--1. 查询出用户名为'张军'的上网卡的上网记录,要求显示卡号,用户名,机器编号、开始时间、结束时间,和消费金额,并按消费金额降序排列 +select C.CardID 卡号 , UserName 用户名 , P.CID 机器编号 , BeginTime 开始时间 , Endtime 结束时间 , fee 消费金额 from TBL_Card C inner join TBL_Record R on C.CardID=R.CardID inner join TBL_Computer P on R.CID=P.CID where UserName='张军' order by fee DESC +--2. 查询出每台机器上的上网次数和消费的总金额 +select P.CID 机器编号 , COUNT(*) 次数 , SUM(fee) 总金额 from TBL_Computer P inner join TBL_Record R on P.CID=R.CID group by P.CID +--3. 查询出所有已经使用过上网卡的的消费总金额 +select C.CardID 卡号 , SUM(fee) 消费总金额 from TBL_Card C inner join TBL_Record R on C.CardID=R.CardID group by C.CardID +--4. 查询出从未消费过的上网卡的卡号和用户名 +select C.CardID 卡号 , UserName 用户名 from TBL_Card C left join TBL_Record R on C.CardID=R.CardID where fee is NULL or fee='' +--5. 将密码与用户名一样的上网卡信息查询出来 +select * from TBL_Card C inner join TBL_Card A on C.PassWord=A.UserName +--6. 查询出使用次数最多的机器号和使用次数 +select C.CID 机器编号 , COUNT(*) 使用次数 from TBL_Record R inner join TBL_Computer C on R.CID=C.CID group by C.CID having C.CID=(select top 1 CID from TBL_Record group by CID order by COUNT(*) DESC) +--7. 查询出卡号是以'ABC'结尾的卡号,用户名,上网的机器号和消费金额 +select C.CardID 卡号 , UserName 用户名 , CID 机器编号 , SUM(fee) 消费金额 from TBL_Card C inner join TBL_Record R on C.CardID=R.CardID where C.CardID like '%ABC' group by C.CardID,UserName,CID +--8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select C.CardID 卡号 , UserName 用户名 , CID 机器编号 , BeginTime 开始时间 , Endtime 结束时间 from TBL_Record R inner join TBL_Card C on R.CardID=C.CardID where datename(weekday,BeginTime)='星期六' or datename(weekday,BeginTime)='星期日' +--9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select C.CardID 卡号 , UserName 用户名 , CID 机器编号 , Begintime 开始时间 , Endtime 结束时间 , fee 消费金额 from TBL_Record R inner join TBL_Card C on R.CardID=C.CardID where datediff(hh,Endtime,BeginTime)>12 +--10. 查询除消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select C.CardID 卡号 , UserName 用户名 ,CID 机器编号 , BeginTime 开始时间, EndTime 结束时间 , fee 消费金额 from TBL_Record R join TBL_Card C on C.cardId = R.CardID where fee not in (select top 3 fee from TBL_Record order by fee DESC)order by fee desc \ No newline at end of file -- Gitee From 964316a7a4700775abf242bd993d82aa768377e8 Mon Sep 17 00:00:00 2001 From: sdj408408 <442865611@qq.com> Date: Tue, 30 Mar 2021 18:08:53 +0800 Subject: [PATCH 008/144] di1 --- .../SQLQuery1.sql" | 112 ++++++++++++++++++ .../\344\275\234\344\270\232/1.bmp" | Bin 0 -> 1110294 bytes .../\344\275\234\344\270\232/2.bmp" | Bin 0 -> 1116774 bytes .../\344\275\234\344\270\232\344\270\200.txt" | 23 ++++ .../\344\275\234\344\270\232\344\272\214.txt" | 47 ++++++++ 5 files changed, 182 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\213\217\346\235\234\345\206\233/SQLQuery1.sql" create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\213\217\346\235\234\345\206\233/\344\275\234\344\270\232/1.bmp" create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\213\217\346\235\234\345\206\233/\344\275\234\344\270\232/2.bmp" create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\213\217\346\235\234\345\206\233/\344\275\234\344\270\232/\344\275\234\344\270\232\344\270\200.txt" create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\213\217\346\235\234\345\206\233/\344\275\234\344\270\232/\344\275\234\344\270\232\344\272\214.txt" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\213\217\346\235\234\345\206\233/SQLQuery1.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\213\217\346\235\234\345\206\233/SQLQuery1.sql" new file mode 100644 index 0000000..3fdcf78 --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\213\217\346\235\234\345\206\233/SQLQuery1.sql" @@ -0,0 +1,112 @@ +use master +go + +create database Student +on +( +name='Student', + filename='D:\text\Student.mdf', + size=5MB, + maxsize=50MB, + filegrowth=10% +) +log on +( +name='Students_log', + filename='D:\text\Student_log.mdf', + size=5MB, + maxsize=50MB, + filegrowth=10% +) +go + +use Student +go + +create table stuInfo +( +stuID int primary key identity, +stuName varchar(10), +stuAge varchar(5), +stuSex varchar(1), +[time] datetime +) +go + +create table courseInfo +( +courseID int primary key identity, +courseName varchar(10), +courseMarks int +) +go + +create table scoreInfo +( +scoreID int primary key identity, +stuID int references stuInfo(stuID), +courseID int references courseInfo(courseID), +score int +) +go + +insert into stuInfo values('Tom',19,1,null),('Jack',20,0,null), +('Rose',21,1,null),('Lulu',19,1,null),('Lili',21,0,null),('abc',20,1,'2007-01-07 01:11:36.590') +go + +insert into courseInfo values('JavaBase',4),('HTML',2),('JavaScript',2),('SqlBase',2) +go + +insert into scoreInfo values(1,1,80),(1,2,85),(1,4,50),(2,1,75),(2,3,45), +(2,4,75),(3,1,45),(4,1,95),(4,2,75),(4,3,90),(4,4,45) +go + +select * from stuInfo +select * from courseInfo +select * from scoreInfo +go + +--1.查询出每个学生所选修的课程的数量和所选修的课程的考试的平均分 +select stuName 学生姓名,COUNT(scoreInfo.stuID) 所选修的课程的数量,AVG(score) 所选修的课程的考试的平均分 + from stuInfo left join scoreInfo on stuInfo.stuID = scoreInfo.stuID GROUP BY stuName + go + +--2.查询出每门课程的选修的学生的个数和学生考试的总分 +select courseName 课程名称,COUNT(scoreInfo.courseID) 学生个数,SUM(score) 学生考试的总分 from courseInfo inner join scoreInfo on courseInfo.courseID = scoreInfo.courseID GROUP BY scoreInfo.courseID,courseName + go + + --3.查询出性别一样并且年龄一样的学生的信息 + --方法一 + select * from stuInfo t where (select COUNT(*) from stuInfo where stuAge=t.stuAge and stuSex=t.stuSex)>1 + --方法二 + select * from stuInfo s1 join stuInfo s2 on s1.stuName<>s2.stuName and s1.stuAge=s2.stuAge and s1.stusex=s2.stusex + go + +--4.查询出学分一样的课程信息 + select * from courseInfo c where (select COUNT(*) from courseInfo where courseMarks=c.courseMarks)>1 + go + +--5.查询出参加了考试的学生的学号,姓名,课程号和分数 +select stuInfo.stuID 学号,stuName 姓名,courseID 课程号,score 分数 from stuInfo inner join scoreInfo on stuInfo.stuID = scoreInfo.stuID +go + +--6.查询出参加了考试的学生的学号,课程号,课程名,课程学分和分数 +select stuInfo.stuID 学号,stuName 姓名,scoreInfo.courseID 课程号,courseMarks 课程学分,score 分数 from scoreInfo inner join stuInfo on scoreInfo.stuID = stuInfo.stuID inner join courseInfo on scoreInfo.courseID = courseInfo.courseID +go + +--7.查询出没有参加考试的学生的学号和姓名 +--方法一 +select stuInfo.stuID 学号,stuName 姓名 from stuInfo left join scoreInfo on stuInfo.stuID = scoreInfo.stuID where score is null +--方法二 +select * from stuInfo where stuID not in (select stuID from scoreInfo) +go + +--8.查询出是周六周天来报到的学生 + + +--9.查询出姓名中有字母a的学生的信息 +select * from stuInfo where stuName like '%a%' +go + +--10.查询出选修了2门课程以上的并且考试平均分在70以上的学生的 学号 和 考试平均分以及 选修课程的数量 +select stuInfo.stuID 学号,AVG(score) 考试平均分,COUNT(courseID) 选修课程的数量 from stuInfo join scoreInfo on stuInfo.stuID = scoreInfo.stuID group by stuInfo.stuID having AVG(score)>70 and COUNT(courseID)>2 diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\213\217\346\235\234\345\206\233/\344\275\234\344\270\232/1.bmp" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\213\217\346\235\234\345\206\233/\344\275\234\344\270\232/1.bmp" new file mode 100644 index 0000000000000000000000000000000000000000..65b6cf3101996a4c52218b7a5dad3fa9880001ad GIT binary patch literal 1110294 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 B#IpbZ literal 0 HcmV?d00001 diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\213\217\346\235\234\345\206\233/\344\275\234\344\270\232/\344\275\234\344\270\232\344\270\200.txt" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\213\217\346\235\234\345\206\233/\344\275\234\344\270\232/\344\275\234\344\270\232\344\270\200.txt" new file mode 100644 index 0000000..1f307c9 --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\213\217\346\235\234\345\206\233/\344\275\234\344\270\232/\344\275\234\344\270\232\344\270\200.txt" @@ -0,0 +1,23 @@ +有如图所示的三张表结构,学生信息表(stuInfo),课程信息表(courseInfo),分数信息表(scoreInfo) + +题目: +1.查询出每个学生所选修的课程的数量和所选修的课程的考试的平均分 + +2.查询出每门课程的选修的学生的个数和学生考试的总分 + +3.查询出性别一样并且年龄一样的学生的信息 + +4.查询出学分一样的课程信息 + +5.查询出参加了考试的学生的学号,姓名,课程号和分数 + +6.查询出参加了考试的学生的学号,课程号,课程名,课程学分和分数 + +7.查询出没有参加考试的学生的学号和姓名 + +8.查询出是周六周天来报到的学生 + +9.查询出姓名中有字母a的学生的信息 + +10.查询出选修了2门课程以上的并且考试平均分在70以上的学生的学号和考试平均分以及选修课程的数量 + diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\213\217\346\235\234\345\206\233/\344\275\234\344\270\232/\344\275\234\344\270\232\344\272\214.txt" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\213\217\346\235\234\345\206\233/\344\275\234\344\270\232/\344\275\234\344\270\232\344\272\214.txt" new file mode 100644 index 0000000..bb1c878 --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\213\217\346\235\234\345\206\233/\344\275\234\344\270\232/\344\275\234\344\270\232\344\272\214.txt" @@ -0,0 +1,47 @@ +首先创建网吧计费系统的数据库,表结构和数据如2.bmp所示,表的说明如下: + +表一为上网卡信息表(tbl_card) +id: 卡号,主键 +passWord:密码 +balance:卡上的余额 +userName:该上网卡所属的用户名 + +表2为网吧机器说明表(tbl_computer) +id:机器编号,主键 +onUse:该机器是否正在使用,0为未使用,1为正在使用 +note:该机器的说明 + + +表3为上网记录表(tbl_record): +id:记录编号,主键 +cardId:本次上网的卡号,外键 +ComputerId:本次上网记录所使用的机器号,外键 +beginTime:本次上网记录的开始时间 +endTime:本次上网记录的结束时间 +fee:本次上网的费用 + + +请完成以下题目: +1. 查询出用户名为'张军'的上网卡的上网记录,要求显示卡号,用户名,机器编号、开始时间、结束时间,和消费金额,并按消费金额降序排列 + +2. 查询出每台机器上的上网次数和消费的总金额 + +3. 查询出所有已经使用过的上网卡的消费总金额 + +4. 查询出从未消费过的上网卡的卡号和用户名 + +5. 将密码与用户名一样的上网卡信息查询出来 + +6. 查询出使用次数最多的机器号和使用次数 + +7. 查询出卡号是以'ABC'结尾的卡号,用户名,上网的机器号和消费金额 + +8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 + +9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 + +10. 查询除消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 + + + + -- Gitee From c7cb8347ad03adf84b25ecb8d55961339b0527f5 Mon Sep 17 00:00:00 2001 From: call-y5 Date: Tue, 30 Mar 2021 20:53:18 +0800 Subject: [PATCH 009/144] ss --- .../ss.sql" | 183 ++++++++++++++++++ 1 file changed, 183 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\262\263\345\220\257\345\215\216/ss.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\262\263\345\220\257\345\215\216/ss.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\262\263\345\220\257\345\215\216/ss.sql" new file mode 100644 index 0000000..37bcc72 --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\262\263\345\220\257\345\215\216/ss.sql" @@ -0,0 +1,183 @@ +use master +go + +create database Utest +go + +use UTest +go + +create table StuInfo +( + StuID int primary key identity(1,1), + StuName varchar(10) not null, + StuAge int, + StuSex char(1) default(0) check(StuSex in(0, 1)), + Time datetime +) + +insert into + StuInfo(StuName, StuAge, StuSex, Time) +values + ('Tom',19,1,NUll), + ('Jeck',20,0,NUll), + ('Rose',21,1,NUll), + ('Lulu',19,1,NUll), + ('Lili',21,0,NUll), + ('abc',20,1,'2007-01-07 01:11:36.590') +go + +-- courseInfo scoreInfo +create table CourseInfo +( + CourseID int primary key identity(1,1), + CourseName varchar(15) not null, + CourseMarks int +) + +insert into + CourseInfo(CourseName, CourseMarks) +values + ('JavaBase',4), + ('HTML',2), + ('JavaScript',2), + ('SqlBase',2) +go + +create table ScoreInfo +( + ScoreId int primary key identity(1,1), + StuId int foreign key references StuInfo(StuID), + CourseID int foreign key references CourseInfo(CourseID) not null, + Score int +) + +insert into + ScoreInfo(StuID,CourseId,Score) +values + (1,1,80), + (1,2,85), + (1,4,50), + (2,1,75), + (2,3,45), + (2,4,75), + (3,1,45), + (4,1,95), + (4,2,75), + (4,3,90), + (4,4,45) +go + +select * from StuInfo +select * from CourseInfo +select * from ScoreInfo + +-- 1.鏌ヨ鍑烘瘡涓鐢熸墍閫変慨鐨勮绋嬬殑鏁伴噺鍜屾墍閫変慨鐨勮绋嬬殑鑰冭瘯鐨勫钩鍧囧垎 +select + Sti.StuName,count(Sci.CourseID),avg(Sci.Score) +from + StuInfo Sti +join + ScoreInfo Sci +on + Sti.StuID = Sci.StuID +group by + Sci.StuID + +-- 2.鏌ヨ鍑烘瘡闂ㄨ绋嬬殑閫変慨鐨勫鐢熺殑涓暟鍜屽鐢熻冭瘯鐨勬诲垎 +select + Ci.CoureName, count(Sci.CourseId), Sti.StuName, sum(Sci.Score) +from + CourseInfo Ci +join + ScoreInfo Sci +on + Sci.CourseID = Ci.CourseID +join + StuInfo Sti +on + Sti.StuID = Sci.StuID +group by + Sci.StuID +order by + Sci.Score desc + +-- 3.鏌ヨ鍑烘у埆涓鏍峰苟涓斿勾榫勪竴鏍风殑瀛︾敓鐨勪俊鎭 +select + si.* +from + StuInfo si +group by + StuAge,StuSex +having + count(StuAge) > 1 and count(StuSex) > 1 + +-- 4.鏌ヨ鍑哄鍒嗕竴鏍风殑璇剧▼淇℃伅 +select + * +from + CourseInfo Ci +join + CourseInfo Ci2 +on + Ci.CourseMarks = Ci2.CourseMarks + + +-- 5.鏌ヨ鍑哄弬鍔犱簡鑰冭瘯鐨勫鐢熺殑瀛﹀彿锛屽鍚嶏紝璇剧▼鍙峰拰鍒嗘暟 +select + Sti.StuID,Sti.StuName,Sci.CourseID,Sci.Score +from + StuInfo Sti +join + ScoreInfo Sci +on + Sti.stuID = Sci.StuID + +-- 6.鏌ヨ鍑哄弬鍔犱簡鑰冭瘯鐨勫鐢熺殑瀛﹀彿锛岃绋嬪彿锛岃绋嬪悕锛岃绋嬪鍒嗗拰鍒嗘暟 +select + Sti.StuID,Sti.StuName,Ci.*,Sci.Score +from + StuInfo Sti +join + ScoreInfo Sci +on + Sti.stuID = Sci.StuID +join + CourseInfo Ci +on + Sci.CourseID = Ci.CourseID + +-- 7.鏌ヨ鍑烘病鏈夊弬鍔犺冭瘯鐨勫鐢熺殑瀛﹀彿鍜屽鍚 +select + Sti.StuID,Sti.StuName +from + StuInfo Sti +join + ScoreInfo Sci +on + Sti.StuID not in (Sci.StuID ) + +-- 8.鏌ヨ鍑烘槸鍛ㄥ叚鍛ㄥぉ鏉ユ姤鍒扮殑瀛︾敓 +select + Sti.StuName +from + StuInfo Sti +where + datepart(weekday,getdate()) > 5 + +-- 9.鏌ヨ鍑哄鍚嶄腑鏈夊瓧姣峚鐨勫鐢熺殑淇℃伅 +select + * +from + StuInfo +where + StuName like ('%a%') +-- 10.鏌ヨ鍑洪変慨浜2闂ㄨ绋嬩互涓婄殑骞朵笖鑰冭瘯骞冲潎鍒嗗湪70浠ヤ笂鐨勫鐢熺殑瀛﹀彿鍜岃冭瘯骞冲潎鍒嗕互鍙婇変慨璇剧▼鐨勬暟閲 +select + StuID,count(Sci.CoureID),avg(Sci.Score) +from + ScoreInfo Sci +group by + Sci.StuID +having + count(Sci.CoureID) > 2 and avg(Sci.Score) > 70 -- Gitee From b5b57fea1a6ae943711eb96d191dbbbd354bff58 Mon Sep 17 00:00:00 2001 From: call-y5 Date: Tue, 30 Mar 2021 20:59:44 +0800 Subject: [PATCH 010/144] what --- .../\345\262\263\345\220\257\345\215\216/ss.sql" | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\262\263\345\220\257\345\215\216/ss.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\262\263\345\220\257\345\215\216/ss.sql" index 37bcc72..40bf1f3 100644 --- "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\262\263\345\220\257\345\215\216/ss.sql" +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\262\263\345\220\257\345\215\216/ss.sql" @@ -104,13 +104,13 @@ order by -- 3.鏌ヨ鍑烘у埆涓鏍峰苟涓斿勾榫勪竴鏍风殑瀛︾敓鐨勪俊鎭 select - si.* + S1.* from - StuInfo si -group by - StuAge,StuSex -having - count(StuAge) > 1 and count(StuSex) > 1 + StuInfo s1 +join + StuInfo s2 +on + S1.stuID <> S2.stuID and S1.stuSex = S2.stuSex and S1.stuAge = S2.stuAge -- 4.鏌ヨ鍑哄鍒嗕竴鏍风殑璇剧▼淇℃伅 select -- Gitee From a1d0491ce13263d3acf7c054774cc25f2e36823b Mon Sep 17 00:00:00 2001 From: xiaohaisheng <2674550529@qq.com> Date: Tue, 30 Mar 2021 21:06:24 +0800 Subject: [PATCH 011/144] =?UTF-8?q?=E6=96=B0=E5=BB=BA=20=E8=82=96=E6=B5=B7?= =?UTF-8?q?=E6=99=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\350\202\226\346\265\267\346\231\237/.keep" | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\202\226\346\265\267\346\231\237/.keep" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\202\226\346\265\267\346\231\237/.keep" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\202\226\346\265\267\346\231\237/.keep" new file mode 100644 index 0000000..e69de29 -- Gitee From 1486bfa1e6db67e88c0317ad89699e5fe075b587 Mon Sep 17 00:00:00 2001 From: xiaohaisheng <2674550529@qq.com> Date: Tue, 30 Mar 2021 21:07:04 +0800 Subject: [PATCH 012/144] =?UTF-8?q?=E8=82=96=E6=B5=B7=E6=99=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SQLQuery1.sql" | 101 ++++++++++++++++++ 1 file changed, 101 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\202\226\346\265\267\346\231\237/SQLQuery1.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\202\226\346\265\267\346\231\237/SQLQuery1.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\202\226\346\265\267\346\231\237/SQLQuery1.sql" new file mode 100644 index 0000000..8138dd1 --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\202\226\346\265\267\346\231\237/SQLQuery1.sql" @@ -0,0 +1,101 @@ +use master +go +create database school +on +( + name = 'school', + filename = 'C:\sql\school.mdf', + size = 5MB , + maxsize = 500MB , + filegrowth = 5MB +) +log on +( + name = 'school_log', + filename = 'C:\sql\school_log.ldf', + size = 5MB , + maxsize = 500MB , + filegrowth = 5MB +) +go +use school +go +create table StuInfo +( + StuID int primary key identity (1,1) not null, + StuName nvarchar(20) not null, + StuAge int not null, + StuSex char(1) default(1) check(StuSex='男' or StuSex='女'), + Time datetime +) + +create table courseInfo +( + courseID int primary key identity (1,1) not null, + courseName nvarchar(20) not null, + courseMarks int not null +) + +create table scoreInfo +( + scoreID int primary key identity (1,1) not null, + StuID int references StuInfo(StuID), + courseID int references courseInfo(courseID), + score int check(score>=0 and score<=100) +) + +go +truncate table StuInfo +alter table StuInfo drop constraint CK__StuInfo__StuSex__117F9D94 +alter table scoreInfo drop constraint FK__scoreInfo__StuID__164452B1 +insert into StuInfo(StuName,StuAge,StuSex,Time) values +('Tom',19,'1',null), +('Jack',20,'0',null), +('Rose',21,'1',null), +('Lulu',19,'1',null), +('Lili',21,'0',null), +('abc',20,'1','2007-01-07 01:11:36.590') + +insert into courseInfo(courseName , courseMarks) values +('JavaBase',4), +('HTML',2), +('JavaScript',2), +('SqlBase',2) + +insert into scoreInfo(StuID,courseID,score) values +(1,1,80), +(1,2,85), +(1,4,50), +(2,1,75), +(2,3,45), +(2,4,75), +(3,1,45), +(4,1,95), +(4,2,75), +(4,3,90), +(4,4,45) + +select * from StuInfo +select * from courseInfo +select * from scoreInfo + +--1.查询出每个学生 所选修的课程的数量 和 所选修的课程的考试的平均分 +select S.StuID , count(*) 所选课程的数量 , AVG(score) 所选修课程的考试平均分 from StuInfo S inner join scoreInfo C on S.StuID=C.StuID inner join courseInfo U on U.courseID = C.courseID group by S.StuID +--2.查询出每门课程的选修的学生的个数和学生考试的总分 +select courseName , count(*) , sum(score) from StuInfo S inner join scoreInfo C on S.StuID=C.StuID inner join courseInfo U on U.courseID = C.courseID group by courseName +--3.查询出性别一样并且年龄一样的学生的信息 +select * from StuInfo S,StuInfo I where S.StuAge=I.StuAge AND S.StuSex=I.StuSex and S.StuID<>I.StuID +--4.查询出学分一样的课程信息fo B on A.StuSex=B.StuAge +select * from CourseInfo C,CourseInfo I where C.CourseMarks=I.CourseMarks and C.CourseID<>I.CourseID +--5.查询出参加了考试的学生的学号,姓名,课程号和分数 +select S.StuID 学号 , StuName 姓名 , U.courseID 课程号 ,score 分数 from StuInfo S inner join scoreInfo C on S.StuID=C.StuID inner join courseInfo U on U.courseID = C.courseID +--6.查询出参加了考试的学生的学号,课程号,课程名,课程学分和分数 +select S.StuID 学号 , U.courseID 课程号 , courseName 课程名 , courseMarks 课程学分 , score 分数 from StuInfo S inner join scoreInfo C on S.StuID=C.StuID inner join courseInfo U on U.courseID = C.courseID +--7.查询出没有参加考试的学生的学号和姓名 +select S.StuID 学号 , StuName 姓名 from ScoreInfo I right join StuInfo S on I.StuID=S.StuID where Score is null or Score='' +--8.查询出是周六周天来报到的学 +select * from StuInfo where datename(weekday,Time)='星期六' or datename(weekday,Time)='星期日' +--9.查询出姓名中有字母a的学生的信息 +select * from StuInfo where StuName like '%a%' or StuName like '%A%' +--10.查询出选修了2门课程以上的并且考试平均分在70以上的学生的学号和考试平均分以及选修课程的数量 +select S.StuID 学号 , COUNT(*) 课程数量 , AVG(Score) 平均分 from ScoreInfo I inner join StuInfo S on I.StuID=S.StuID group by S.StuID having COUNT(*)>2 and AVG(Score)>70 \ No newline at end of file -- Gitee From 5a7b567bf309087541a983b4ab9d9a0eca529f48 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BE=90=E5=89=91=E9=98=B3?= <2998018776@qq.com> Date: Tue, 30 Mar 2021 21:31:07 +0800 Subject: [PATCH 013/144] =?UTF-8?q?=E6=96=B0=E5=BB=BA=20=E5=BE=90=E5=89=91?= =?UTF-8?q?=E9=98=B3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\345\276\220\345\211\221\351\230\263/.keep" | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\276\220\345\211\221\351\230\263/.keep" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\276\220\345\211\221\351\230\263/.keep" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\276\220\345\211\221\351\230\263/.keep" new file mode 100644 index 0000000..e69de29 -- Gitee From 236c4c1408e26c996aab660439a2310f17306a0a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BE=90=E5=89=91=E9=98=B3?= <2998018776@qq.com> Date: Tue, 30 Mar 2021 21:31:23 +0800 Subject: [PATCH 014/144] =?UTF-8?q?=E5=BE=90=E5=89=91=E9=98=B3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../work1.sql" | 92 +++++++++++++++++++ 1 file changed, 92 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\276\220\345\211\221\351\230\263/work1.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\276\220\345\211\221\351\230\263/work1.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\276\220\345\211\221\351\230\263/work1.sql" new file mode 100644 index 0000000..8fdcea0 --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\276\220\345\211\221\351\230\263/work1.sql" @@ -0,0 +1,92 @@ +create database Students +on +( +name= 'students', +filename = 'D:\SQL.mdf', +size = 5, +maxsize = 10, +filegrowth = 10% +) +log on +( +name= 'students_log', +filename = 'D:\SQL_log.ldf', +size = 5, +maxsize = 10, +filegrowth = 10% +) +use Students +go +create table stuinfo +( +StuId int primary key identity, +StuName nvarchar(10) not null, +StuAge int, +StuSex int check(StuSex in(1,0)), +time datetime +) +create table courseinfo +( +CourseID int primary key identity, +CourseName nvarchar(10), +CourseMarks int +) +create table scoreinfo +( +ScoreID int primary key identity, +StuId int references stuinfo(StuId), +CourseID int references courseinfo(CourseID), +Score int +) +insert into stuinfo values('Tom',19,1,''), +('Jack',20,0,''), +('Rose',21,1,''), +('Lulu',19,1,''), +('Lili',21,0,''), +('abc',20,1,'2007-01-07 01:11:36.590') +insert into courseinfo values('JavaBase',4), +('HTML',2), +('JavaScript',2), +('SqlBase',2) +insert into scoreinfo values(1,1,80), +(1,2,85), +(1,4,50), +(2,1,75), +(2,3,45), +(2,4,75), +(3,1,45), +(4,1,95), +(4,2,75), +(4,3,90), +(4,4,45) +select * from stuinfo +select * from courseinfo +select * from scoreinfo +--1.查询出每个学生所选修的课程的数量和所选修的课程的考试的平均分 +select s.StuId,stuName,count(*) 选修课程数量,AVG(Score) 考试平均分 from stuinfo s +inner join scoreinfo sc on s.StuId=sc.StuId +inner join courseinfo c on sc.CourseID=c.CourseID group by s.StuId,stuName +--2.查询出每门课程的选修的学生的个数和学生考试的总分 +select c.CourseID,CourseName,COUNT(*) 选修学生个数,SUM(Score) 考试总分 from courseinfo c +inner join scoreinfo sc on c.CourseID=sc.CourseID +group by c.CourseID,CourseName +--3.查询出性别一样并且年龄一样的学生的信息 +select a.StuId,a.StuName,a.StuAge,a.StuSex from stuinfo a +inner join stuinfo b on a.StuSex=b.StuSex and b.StuAge=a.StuAge and a.StuName!=b.StuName +--4.查询出学分一样的课程信息 +select * from courseinfo a inner join courseinfo b on a.CourseMarks=b.CourseMarks and a.CourseID!=b.CourseID +--5.查询出参加了考试的学生的学号,姓名,课程号和分数 +select s.stuId,StuName,c.CourseID,Score from StuInfo s right join scoreinfo sc on s.stuId=sc.StuId +inner join courseinfo c on sc.CourseID= c.CourseID +--6.查询出参加了考试的学生的学号,课程号,课程名,课程学分和分数 +select s.stuId,c.CourseID,CourseName,CourseMarks,Score from StuInfo s right join scoreinfo sc on s.stuId=sc.StuId +inner join courseinfo c on sc.CourseID= c.CourseID +--7.查询出没有参加考试的学生的学号和姓名 +select s.stuId,StuName from stuinfo s left join scoreinfo sc on s.stuId=sc.StuId where score is null or score='' +--8.查询出是周六周天来报到的学生 +select * from StuInfo where datename(weekday,Time) ='星期六' or datename(weekday,Time) = '星期天' +--9.查询出姓名中有字母a的学生的信息 +select * from StuInfo where stuName like '%a%' +--10.查询出选修了2门课程以上的并且考试平均分在70以上的学生的学号和考试平均分以及选修课程的数量 +select s.stuId,AVG(Score) 平均分,COUNT(*)选修课程数量 from StuInfo s inner join scoreinfo sc on s.stuId=SC.StuId +inner join courseinfo c on sc.CourseID=c.CourseID group by s.stuId having COUNT(*)>2 and AVG(Score)>70 -- Gitee From b1a02bb502582d2cc9b97b4ef3509b9d850a9b24 Mon Sep 17 00:00:00 2001 From: sdj408408 <442865611@qq.com> Date: Tue, 30 Mar 2021 21:54:22 +0800 Subject: [PATCH 015/144] di1 --- .../SQLQuery1.sql" | 3 +- .../\344\275\234\344\270\232/1.bmp" | Bin 1110294 -> 0 bytes .../\344\275\234\344\270\232/2.bmp" | Bin 1116774 -> 0 bytes .../\344\275\234\344\270\232\344\270\200.txt" | 23 --------- .../\344\275\234\344\270\232\344\272\214.txt" | 47 ------------------ 5 files changed, 2 insertions(+), 71 deletions(-) delete mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\213\217\346\235\234\345\206\233/\344\275\234\344\270\232/1.bmp" delete mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\213\217\346\235\234\345\206\233/\344\275\234\344\270\232/2.bmp" delete mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\213\217\346\235\234\345\206\233/\344\275\234\344\270\232/\344\275\234\344\270\232\344\270\200.txt" delete mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\213\217\346\235\234\345\206\233/\344\275\234\344\270\232/\344\275\234\344\270\232\344\272\214.txt" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\213\217\346\235\234\345\206\233/SQLQuery1.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\213\217\346\235\234\345\206\233/SQLQuery1.sql" index 3fdcf78..6905f6c 100644 --- "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\213\217\346\235\234\345\206\233/SQLQuery1.sql" +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\213\217\346\235\234\345\206\233/SQLQuery1.sql" @@ -102,7 +102,8 @@ select * from stuInfo where stuID not in (select stuID from scoreInfo) go --8.查询出是周六周天来报到的学生 - +select * from StuInfo where datename(weekday,[time])='星期六' or datename(weekday,[time])='星期日' +go --9.查询出姓名中有字母a的学生的信息 select * from stuInfo where stuName like '%a%' diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\213\217\346\235\234\345\206\233/\344\275\234\344\270\232/1.bmp" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\213\217\346\235\234\345\206\233/\344\275\234\344\270\232/1.bmp" deleted file mode 100644 index 65b6cf3101996a4c52218b7a5dad3fa9880001ad..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1110294 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 B#IpbZ diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\213\217\346\235\234\345\206\233/\344\275\234\344\270\232/\344\275\234\344\270\232\344\270\200.txt" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\213\217\346\235\234\345\206\233/\344\275\234\344\270\232/\344\275\234\344\270\232\344\270\200.txt" deleted file mode 100644 index 1f307c9..0000000 --- "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\213\217\346\235\234\345\206\233/\344\275\234\344\270\232/\344\275\234\344\270\232\344\270\200.txt" +++ /dev/null @@ -1,23 +0,0 @@ -有如图所示的三张表结构,学生信息表(stuInfo),课程信息表(courseInfo),分数信息表(scoreInfo) - -题目: -1.查询出每个学生所选修的课程的数量和所选修的课程的考试的平均分 - -2.查询出每门课程的选修的学生的个数和学生考试的总分 - -3.查询出性别一样并且年龄一样的学生的信息 - -4.查询出学分一样的课程信息 - -5.查询出参加了考试的学生的学号,姓名,课程号和分数 - -6.查询出参加了考试的学生的学号,课程号,课程名,课程学分和分数 - -7.查询出没有参加考试的学生的学号和姓名 - -8.查询出是周六周天来报到的学生 - -9.查询出姓名中有字母a的学生的信息 - -10.查询出选修了2门课程以上的并且考试平均分在70以上的学生的学号和考试平均分以及选修课程的数量 - diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\213\217\346\235\234\345\206\233/\344\275\234\344\270\232/\344\275\234\344\270\232\344\272\214.txt" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\213\217\346\235\234\345\206\233/\344\275\234\344\270\232/\344\275\234\344\270\232\344\272\214.txt" deleted file mode 100644 index bb1c878..0000000 --- "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\213\217\346\235\234\345\206\233/\344\275\234\344\270\232/\344\275\234\344\270\232\344\272\214.txt" +++ /dev/null @@ -1,47 +0,0 @@ -首先创建网吧计费系统的数据库,表结构和数据如2.bmp所示,表的说明如下: - -表一为上网卡信息表(tbl_card) -id: 卡号,主键 -passWord:密码 -balance:卡上的余额 -userName:该上网卡所属的用户名 - -表2为网吧机器说明表(tbl_computer) -id:机器编号,主键 -onUse:该机器是否正在使用,0为未使用,1为正在使用 -note:该机器的说明 - - -表3为上网记录表(tbl_record): -id:记录编号,主键 -cardId:本次上网的卡号,外键 -ComputerId:本次上网记录所使用的机器号,外键 -beginTime:本次上网记录的开始时间 -endTime:本次上网记录的结束时间 -fee:本次上网的费用 - - -请完成以下题目: -1. 查询出用户名为'张军'的上网卡的上网记录,要求显示卡号,用户名,机器编号、开始时间、结束时间,和消费金额,并按消费金额降序排列 - -2. 查询出每台机器上的上网次数和消费的总金额 - -3. 查询出所有已经使用过的上网卡的消费总金额 - -4. 查询出从未消费过的上网卡的卡号和用户名 - -5. 将密码与用户名一样的上网卡信息查询出来 - -6. 查询出使用次数最多的机器号和使用次数 - -7. 查询出卡号是以'ABC'结尾的卡号,用户名,上网的机器号和消费金额 - -8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 - -9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 - -10. 查询除消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 - - - - -- Gitee From 2c94bc284f6619b7bd5b3bca7808be60c94be081 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B0=8F=E8=B0=B7=E5=B7=9D?= <2727259571@qq.com> Date: Tue, 30 Mar 2021 22:06:06 +0800 Subject: [PATCH 016/144] =?UTF-8?q?=E5=8D=A2=E5=AE=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\345\215\242\345\256\201/SQLQuery1.sql" | 99 +++++++++++++++++++ 1 file changed, 99 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\215\242\345\256\201/SQLQuery1.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\215\242\345\256\201/SQLQuery1.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\215\242\345\256\201/SQLQuery1.sql" new file mode 100644 index 0000000..202304a --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\215\242\345\256\201/SQLQuery1.sql" @@ -0,0 +1,99 @@ +use master +go + +create database Students +on +( + name='Students', + filename='F:\Students.mdf', + size=5mb, + maxsize=100mb, + filegrowth=10% +) +log on +( + name='Students_log', + filename='F:\Students_log.ldf', + size=5mb, + maxsize=100mb, + filegrowth=10% +) +go + +use Students +go + +create table stuInfo +( + stuID int primary key not null identity(1,1), + stuName varchar(10) not null, + stuAge int not null, + stuSex varchar(2) not null check(stuSex='1'or stuSex='0'), + stuTime datetime null +) + +create table courseInfo +( + courseID int primary key not null identity(1,1), + courseName varchar(10) not null, + courseMake int not null +) + +create table scoreInfo +( + scoreID int primary key not null identity(1,1), + stuID int references stuInfo(stuID), + courseID int references courseInfo(courseID), + score int not null +) + +insert into stuInfo(stuName,stuAge,stuSex,stuTime) +values('Tom','19','1',null),('Jack','20','0',null),('Rose','21','1',null), +('Lulu','19','1',null),('Lili','21','0',null),('abc','20','1','2007-01-07 01:11:36.590') + +insert into courseInfo(courseName,courseMake) +values('JavaBase','4'),('HTML','2'),('JavaScript','2'),('SqlBase','2') + +insert into scoreInfo(stuID,courseID,score) +values('1','1','80'),('1','2','85'),('1','4','50'),('2','1','75'),('2','3','45'), +('2','4','75'),('3','1','45'),('4','1','95'),('4','2','75'),('4','3','90'),('4','4','95') + +select * from stuInfo +select * from courseInfo +select * from scoreInfo + +--1.查询出每个学生 所选修的课程的数量 和 所选修的课程的考试的平均分 +select ST.stuName 学生,COUNT(distinct C.courseID) 课程数,AVG(score) 平均分 from scoreInfo SC +inner join stuInfo ST on ST.stuID=SC.stuID +INNER JOIN courseInfo C on C.courseID=SC.courseID +group by ST.stuName + +--2.查询出 每门课程的 选修的学生的个数 和 学生考试的总分 +select A.courseID,COUNT(distinct B.stuID)学生个数,SUM(score)考试总分 from courseInfo A inner join stuInfo B on A.courseID = B.stuID +inner join scoreInfo C on A.courseID = C.courseID GROUP BY A.courseID,courseMake + +--3.查询出性别一样并且年龄一样的学生的信息 +select A.stuName, A.stuSex,A.stuAge from stuInfo A inner join stuInfo B on (A.stuID <> B.stuID) and +(A.stuSex = B.stuSex) and (A.stuAge = B.stuAge) + +--4.查询出学分一样的课程信息 +select distinct A.courseName,A.courseMake from courseInfo A inner join courseInfo B on (A.courseID <> B.courseID) and +(A.courseMake = B.courseMake) + +--5.查询出参加了考试的学生的学号,姓名,课程号和分数 +select A.stuID 学号,A.stuName 姓名,C.courseID 课程号,C.score 分数 from stuInfo A inner join scoreInfo C on A.stuID = C.stuID + +--6.查询出参加了考试的学生的学号,课程号,课程名,课程学分和分数 +select C.stuID 学号,C.courseID 课程号,A.courseName 课程名,A.courseMake 课程学分, C.score 分数 from courseInfo A inner join scoreInfo C on A.courseID = C.courseID + +--7.查询出没有参加考试的 学生的学号 和 姓名 +select A.stuID 学号,A.stuName 姓名 from stuInfo A inner join scoreInfo B on A.stuID = B.stuID where B.score is null + +--8.查询出是周六周天来报到的学生 +select * from stuInfo where datename(weekday,stuTime)='星期六' or datename(weekday,stuTime)='星期日' + +--9.查询出姓名中有字母a的学生的信息 +select * from stuInfo where stuName like '%a%' + +--10.查询出选修了 2门课程以上的 并且 考试平均分在70以上 的学生的学号 和考试平均分 以及选修课程的数量 +select A.stuID 学号,COUNT(*)课程数量,AVG(score)平均分 from stuInfo A inner join scoreInfo B on A.stuID = B.stuID group by A.stuID having COUNT(*)>2 and AVG(score)>70 \ No newline at end of file -- Gitee From 2917f85ce00234681947d1a6cdf9d2102754f61a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9E=97=E6=B5=B7=E5=B3=B0?= <8753959+lin-haifen@user.noreply.gitee.com> Date: Tue, 30 Mar 2021 22:10:47 +0800 Subject: [PATCH 017/144] =?UTF-8?q?=E6=96=B0=E5=BB=BA=20=E6=9E=97=E6=B5=B7?= =?UTF-8?q?=E5=B3=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\346\236\227\346\265\267\345\263\260/.keep" | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\236\227\346\265\267\345\263\260/.keep" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\236\227\346\265\267\345\263\260/.keep" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\236\227\346\265\267\345\263\260/.keep" new file mode 100644 index 0000000..e69de29 -- Gitee From 2463524129edb56ab69587c1038067b48e77d7ed Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9E=97=E6=B5=B7=E5=B3=B0?= <8753959+lin-haifen@user.noreply.gitee.com> Date: Tue, 30 Mar 2021 22:11:18 +0800 Subject: [PATCH 018/144] =?UTF-8?q?=E6=9E=97=E6=B5=B7=E5=B3=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../3.30\344\275\234\344\270\232.sql" | 75 +++++++++++++++++++ 1 file changed, 75 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\236\227\346\265\267\345\263\260/3.30\344\275\234\344\270\232.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\236\227\346\265\267\345\263\260/3.30\344\275\234\344\270\232.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\236\227\346\265\267\345\263\260/3.30\344\275\234\344\270\232.sql" new file mode 100644 index 0000000..5baed16 --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\236\227\346\265\267\345\263\260/3.30\344\275\234\344\270\232.sql" @@ -0,0 +1,75 @@ +use master +go +create database student +on +( + name='student', + filename='E:\sql\student.mdf', + size=10MB, + maxsize=50MB, + filegrowth=10% +) +log on +( + name='student_log', + filename='E:\sql\student_log.ldf', + size=10MB, + maxsize=50MB, + filegrowth=10% +) +go +use student +go +create table stuInfo +( + stuID int primary key, + stuName varchar(20), + stuAge varchar(2), + stuSex varchar(1) check(stuSex=1 or stuSex=0), + time varchar(50) +) +create table courseInfo +( + courseID int primary key, + courseName varchar(20), + courseMarks char(1) +) +create table scoreInfo +( + scoreID int primary key, + stuID int references stuInfo(stuID), + courseID int references courseInfo(courseID), + score int +) +insert into stuInfo (stuID,stuName,stuAge,stuSex,time) +values(1,'Tom',19,1,null),(2,'Jack',20,0,null),(3,'Rose',21,1,null),(4,'Lulu',19,1,null),(5,'Lili',21,0,null),(6,'abc',20,1,'2007-01-07 01:11:36.590') + +insert into courseInfo(courseID,courseName,courseMarks) +values (1,'JavaBase',4),(2,'HTML',2),(3,'JavaScri',2),(4,'SqlBase',2) + +insert into scoreInfo(scoreID,stuID,courseID,score) +values (1,1,1,80),(2,1,2,85),(3,1,4,50),(4,2,1,75),(5,2,3,45),(6,2,4,75),(7,3,1,45),(8,4,2,75),(9,4,2,75),(10,4,3,90),(11,4,4,45) + +select * from stuInfo +select * from courseInfo +select * from scoreInfo +--1.查询出每个学生所选修的课程的数量和所选修的课程的考试的平均分 +select stuName,count(*)课程数量,round (AVG(cast(score as float)),1)平均分 from scoreInfo join stuInfo on stuInfo.stuID = stuInfo.stuID group by stuName +--2.查询出每门课程的选修的学生的个数和学生考试的总分 +select courseName count(*),sum(score) from courseInfo join scoreInfo on courseInfo.courseID = scoreInfo.courseID group by courseName +--3.查询出性别一样并且年龄一样的学生的信息 +select * from stuInfo s1 join stuInfo s2 on s1.stuID = s2.stuID and s1.stuSex= s2.stuSex and s1.stuAge= s2.stuAge +--4.查询出学分一样的课程信息 +select * from courseInfo c1 join courseInfo c2 on c1.courseMarks=c2.courseMarks +--5.查询出参加了考试的学生的学号,姓名,课程号和分数 +select stuInfo.stuID,stuName,courseID,score from stuInfo join scoreInfo on stuInfo.stuID=stuInfo.stuID +--6.查询出参加了考试的学生的学号,课程号,课程名,课程学分和分数 +select stuInfo.stuID,stuName,score from stuInfo join scoreInfo on stuInfo.stuID=stuInfo.stuID join courseInfo on courseInfo.courseID=courseInfo.courseID +--7.查询出没有参加考试的学生的学号和姓名 +select stuInfo.stuID,stuName from stuInfo join scoreInfo on stuInfo.stuID not in (stuInfo.stuID) +--8.查询出是周六周天来报到的学生 +select stuInfo.stuName from stuInfo where datepart (weekday,getdate())>5 +--9.查询出姓名中有字母a的学生的信息 +select * from stuInfo where stuName like ('%a%') +--10.查询出选修了2门课程以上的并且考试平均分在70以上的学生的学号和考试平均分以及选修课程的数量 +select stuID,count(courseID)选修课程数量,AVG(score)平均分 from scoreInfo group by stuID having COUNT(courseID) >2 and AVG(score) >70 -- Gitee From 49caf5aa2449ed38f141d77ab323f23c1f245421 Mon Sep 17 00:00:00 2001 From: yeqihang <438630074@qq.com> Date: Tue, 30 Mar 2021 22:28:04 +0800 Subject: [PATCH 019/144] =?UTF-8?q?=E6=96=B0=E5=BB=BA=20=E5=8F=B6=E5=90=AF?= =?UTF-8?q?=E8=88=AA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\345\217\266\345\220\257\350\210\252/.keep" | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\217\266\345\220\257\350\210\252/.keep" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\217\266\345\220\257\350\210\252/.keep" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\217\266\345\220\257\350\210\252/.keep" new file mode 100644 index 0000000..e69de29 -- Gitee From ff2c2c3f44c645ebb92269b70fda56b1888d7973 Mon Sep 17 00:00:00 2001 From: yeqihang <438630074@qq.com> Date: Tue, 30 Mar 2021 22:28:22 +0800 Subject: [PATCH 020/144] =?UTF-8?q?=E5=8F=B6=E5=90=AF=E8=88=AA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SQLQuery15.sql" | 89 +++++++++++++++++ .../SQLQuery16.sql" | 99 +++++++++++++++++++ 2 files changed, 188 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\217\266\345\220\257\350\210\252/SQLQuery15.sql" create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\217\266\345\220\257\350\210\252/SQLQuery16.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\217\266\345\220\257\350\210\252/SQLQuery15.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\217\266\345\220\257\350\210\252/SQLQuery15.sql" new file mode 100644 index 0000000..d4f7b1c --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\217\266\345\220\257\350\210\252/SQLQuery15.sql" @@ -0,0 +1,89 @@ +use master +go +create database students +on +( + name='students', + filename='D:\students.mdf', + size=5, + maxsize=50, + filegrowth=10% +) +log on +( + name='students_log', + filename='D:\students_log.ldf', + size=5, + maxsize=50, + filegrowth=10% +) +go +use students +go +create table stuInfo +( + stuID int primary key identity(1,1), + stuName varchar(10), + stuAge int, + stuSex char(2) check(stuSex =0 or stuSex =1), + time datetime +) +create table courseInfo +( + courseID int primary key identity(1,1), + courseName varchar(10), + courseMarks int +) +create table scoreInfo +( + scoreID int primary key identity(1,1), + stuID int references stuInfo(stuID) , + courseID int references courseInfo(courseID), + score int +) + +insert into stuInfo values ('Tom',19,1,NULL), +('Jack',20,0,NULL),('Rose',21,1,NULL), +('Lulu',19,1,NULL),('Lili',21,0,NULL), +('abc',20,1,'2007-01-07 01:11:36.590') + +insert into courseInfo values ('JavaBase',4), +('HTML',2),('JavaScript',2),('SqlBase',2) + +insert into scoreInfo values (1,1,80), +(1,2,85),(1,4,50),(2,1,75),(2,3,45), +(2,4,75),(3,1,45),(4,1,95),(4,2,75), +(4,3,90),(4,4,45) + +--1.查询出每个学生所选修的课程的数量和所选修的课程的考试的平均分 + select stuName 学生姓名,count(*)课程数量,avg(score) 平均分 from scoreInfo s inner join stuInfo i on i.stuID = s.stuID inner join courseInfo c on c.courseID = s.courseID + group by stuName +--2.查询出每门课程的选修的学生的个数和学生考试的总分 + select courseName 课程名称,COUNT(*) 选修学生个数,sum(score)考试总分 from scoreInfo s inner join stuInfo i on i.stuID = s.stuID inner join courseInfo c on c.courseID = s.courseID + group by courseName +--3.查询出性别一样并且年龄一样的学生的信息 + select A.* from stuInfo A inner join stuInfo B on A.stuID<>B.stuID and A.stuSex=B.stuSex and A.stuAge=B.stuAge + +--4.查询出学分一样的课程信息 + select distinct A.* from courseInfo A inner join courseInfo B on A.courseID<>B.courseID and A.courseMarks=B.courseMarks + +--5.查询出参加了考试的学生的学号,姓名,课程号和分数 + select s.StuID,StuName,courseID,score from Stuinfo s right join scoreInfo i on s.stuID=i.stuID +--6.查询出参加了考试的学生的学号,课程号,课程名,课程学分和分数 + select s.stuID,c.courseID,courseName,courseMarks,score from courseInfo c left join scoreInfo s on s.courseID= c.courseID +--7.查询出没有参加考试的学生的学号和姓名 + select s.StuID,StuName from Stuinfo s left join scoreInfo i on s.StuID = i.stuID + where score is NULL or score=' ' + +--8.查询出是周六周天来报到的学生 + select * from stuInfo where datename(weekday,time)='星期六' or datename(weekday,time)='星期天' +--9.查询出姓名中有字母a的学生的信息 + select * from stuInfo where stuName like '%a%' +--10.查询出选修了2门课程以上的并且考试平均分在70以上的学生的学号和考试平均分以及选修课程的数量 + select s.stuID,avg(score),count(*) from scoreInfo s inner join stuInfo i on i.stuID = s.stuID inner join courseInfo c on c.courseID = s.courseID + group by s.stuID + having count(*)>2 and avg(score)>70 + +select * from stuInfo --学生信息表 +select * from courseInfo --课程信息表 +select * from scoreInfo --分数信息表 \ No newline at end of file diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\217\266\345\220\257\350\210\252/SQLQuery16.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\217\266\345\220\257\350\210\252/SQLQuery16.sql" new file mode 100644 index 0000000..8b48be5 --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\217\266\345\220\257\350\210\252/SQLQuery16.sql" @@ -0,0 +1,99 @@ +use master +go +create database chargesystem +on +( + name='chargesystem', + filename='D:\chargesystem.mdf', + size=10, + maxsize=50, + filegrowth=5% +) +log on +( + name='chargesystem_log', + filename='D:\chargesystem_log.mdf', + size=10, + maxsize=50, + filegrowth=5% +) +go +use chargesystem +go +create table tbl_card +( + id varchar(10) primary key, + passWord nvarchar(10), + balance int, + userName nvarchar(10) +) +create table tbl_computer +( + id varchar(10) primary key, + onUse char(2) check(onUse=0 or onUse=1), + note varchar(20) +) +create table tbl_record +( + id int primary key, + cardid varchar(10) references tbl_card(id), + Computerid varchar(10) references tbl_computer(id), + beginTime datetime, + endTime datetime, + fee int +) + +insert into tbl_card values ('0023_ABC','555',98,'张军'), +('0025_bbd','abc',300,'朱俊'),('0036_CCD','何柳',100,'何柳'), +('0045_YGR','0045_YGR',58,'证验'),('0078_RJV','55885fg',600,'校庆'), +('0089_EDE','zhang',134,'张峻') + +insert into tbl_computer values ('02',0,25555),('03',0,55555), +('04',0,66666),('05',1,88888),('06',0,688878),('B01',0,558558) + +insert into tbl_record values (23,'0078_RJV','B01','2007-07-15 19:00:00','2007-07-15 21:00:00',20), +(34,'0025_BBD','02','2006-12-25 18:00:00','2006-12-25 22:00:00',23), +(45,'0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), +(46,'0023_ABC','03','2006-12-22 15:26:00','2006-12-22 22:55:00',6), +(47,'0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), +(48,'0023_ABC','03','2007-01-06 15:26:00','2007-01-06 22:55:00',6), +(55,'0023_ABC','03','2006-07-21 15:26:00','2006-07-21 22:55:00',50), +(64,'0045_YGR','04','2006-12-24 18:00:00','2006-12-24 22:00:00',3), +(65,'0025_bbd','02','2006-12-28 18:00:00','2006-12-28 22:00:00',23), +(98,'0025_bbd','02','2006-12-26 18:00:00','2006-12-26 22:00:00',23) + + + +--1. 查询出用户名为'张军'的上网卡的上网记录,要求显示卡号,用户名,机器编号、开始时间、结束时间,和消费金额,并按消费金额降序排列 + select c.id 卡号,userName 用户名,Computerid 机器编号,beginTime 开始时间,endTime 结束时间,fee 消费金额 from tbl_card c inner join tbl_record r on c.id=r.cardid + where userName='张军'order by fee desc +--2. 查询出每台机器上的上网次数和消费的总金额 + select c.id 机器编号,COUNT(*) 上网次数,sum(fee) 消费总金额 from tbl_computer c inner join tbl_record r on c.id = r.Computerid + group by c.id +--3. 查询出所有已经使用过的上网卡的消费总金额 + select SUM(fee)消费总金额 from tbl_card c right join tbl_record r on c.id = r.cardid +--4. 查询出从未消费过的上网卡的卡号和用户名 + select c.id , userName from tbl_card c left join tbl_record r on c.id = r.cardid + where fee is NULL or fee=' ' +--5. 将密码与用户名一样的上网卡信息查询出来 + select * from tbl_card A inner join tbl_card B on A.id=B.passWord +--6. 查询出使用次数最多的机器号和使用次数 + select top 1 cardid ,COUNT(*) from tbl_record group by cardid order by COUNT(*) desc + select * from tbl_record +--7. 查询出卡号是以'ABC'结尾的卡号,用户名,上网的机器号和消费金额 + select userName,Computerid,fee from tbl_card c inner join tbl_record r on c.id = r.cardid where c.id like '%ABC' +--8. 查询出是周六、周天上网记的录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 + select c.id,userName,Computerid,beginTime,endTime,fee from tbl_record r inner join tbl_card c on c.id=r.cardid + where datename(weekday,beginTime)='星期六' or datename(weekday,beginTime)='星期天' +--9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 + select c.id,userName,Computerid,beginTime,endTime,fee from tbl_record r inner join tbl_card c on c.id=r.cardid + where DATEDIFF(HH,beginTime,endTime)>12 +--10. 查询除消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 + select c.id,userName,Computerid,beginTime,endTime,fee from tbl_record r inner join tbl_card c on c.id=r.cardid + where fee !=50 + select top 3 fee from tbl_record order by fee desc + + +select * from tbl_card +select * from tbl_computer +select * from tbl_record \ No newline at end of file -- Gitee From 1692dae9d060092fb4fb594d69e2c3726ef5bef7 Mon Sep 17 00:00:00 2001 From: yeqihang <438630074@qq.com> Date: Tue, 30 Mar 2021 22:28:28 +0800 Subject: [PATCH 021/144] =?UTF-8?q?=E5=88=A0=E9=99=A4=E6=96=87=E4=BB=B6=20?= =?UTF-8?q?=E7=AC=AC=E5=8D=81=E4=B8=80=E6=AC=A1=E8=AF=BE=E4=BD=9C=E4=B8=9A?= =?UTF-8?q?/=E5=8F=B6=E5=90=AF=E8=88=AA/.keep?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\345\217\266\345\220\257\350\210\252/.keep" | 0 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\217\266\345\220\257\350\210\252/.keep" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\217\266\345\220\257\350\210\252/.keep" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\217\266\345\220\257\350\210\252/.keep" deleted file mode 100644 index e69de29..0000000 -- Gitee From 57c095111db1138a44a394e4a8f2b4e2dc567e8d Mon Sep 17 00:00:00 2001 From: tan1 <3118123975@qq.com> Date: Tue, 30 Mar 2021 22:41:46 +0800 Subject: [PATCH 022/144] first commit --- .../SQLQuery11.sql" | 92 +++++++++++++++++++ 1 file changed, 92 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\233\271\346\226\207\346\226\214/SQLQuery11.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\233\271\346\226\207\346\226\214/SQLQuery11.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\233\271\346\226\207\346\226\214/SQLQuery11.sql" new file mode 100644 index 0000000..3ae09b9 --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\233\271\346\226\207\346\226\214/SQLQuery11.sql" @@ -0,0 +1,92 @@ +use master +go + +create database student +go + +use student +go + +create table stuInfo +( + stuID int primary key identity(1,1) not null, + stuName char(4)unique not null, + stuAge char(2)not null, + stuSex char(1) default(1) check(stuSex='1' or stuSex='0'), + time date +) + +create table courseInfo +( + courseID int primary key identity(1,1) not null, + courseName char(10) not null, + courseMarks char(1) not null +) + +create table scoreInfo +( + scoreID int primary key identity(1,1) not null, + stuID int references stuInfo(stuID), + courseID int references courseInfo(courseID), + score int not null +) + +insert into stuInfo(stuName,stuAge,stuSex,time) values +('Tom','19','1',''), +('Jack','20','0',''), +('Rose','21','1',''), +('Lulu','19','1',''), +('Lili','21','0',''), +('abc','20','1','2007-01-07 01:11:36.590') + +insert into courseInfo(courseName,courseMarks) values +('JavaBase','4'), +('HTML','2'), +('JavaScript','2'), +('SqlBase','2') + +insert into scoreInfo(stuID,courseID,score) values +('1','1','80'), +('1','2','85'), +('1','4','50'), +('2','1','75'), +('2','3','45'), +('2','4','75'), +('3','1','45'), +('4','1','95'), +('4','2','75'), +('4','3','90'), +('4','4','45') +select * from courseInfo +select * from scoreInfo +select * from stuInfo +--有如图所示的三张表结构,学生信息表(stuInfo),课程信息表(courseInfo),分数信息表(scoreInfo) + +--题目: +--1.查询出每个学生所选修的课程的数量和所选修的课程的考试的平均分scoreInfo +select stuName,count(*),avg(score) from courseInfo inner join scoreInfo on +courseInfo.courseID=scoreInfo.courseID inner join stuInfo on scoreInfo.stuID=stuInfo.stuID group by stuName +--2.查询出每门课程的选修的学生的个数和学生考试的总分 +select courseName,count(*)个数,sum(score)总分 from courseInfo inner join scoreInfo on courseInfo.courseID=scoreInfo.courseID +inner join stuInfo on scoreInfo.stuID=stuInfo.stuID group by courseName +--3.查询出性别一样并且年龄一样的学生的信息 +select * from stuInfo A left join stuInfo B on A.stuID<>B.stuID and A.stuSex=B.stuSex and A.stuAge=B.stuAge +--4.查询出学分一样的课程信息 +select * from courseInfo A inner join courseInfo B on A.courseMarks = B.courseMarks and A.courseID<>B.courseID +--5.查询出参加了考试的学生的学号,姓名,课程号和分数 +select scoreInfo.stuID,stuName,scoreInfo.courseID,score from courseInfo inner join scoreInfo on +courseInfo.courseID=scoreInfo.courseID inner join stuInfo on scoreInfo.stuID=stuInfo.stuID group by scoreInfo.stuID,stuName,scoreInfo.courseID,score +--6.查询出参加了考试的学生的学号,课程号,课程名,课程学分和分数 +select scoreInfo.stuID,scoreInfo.courseID,courseName,courseMarks,score from courseInfo inner join scoreInfo on +courseInfo.courseID=scoreInfo.courseID inner join stuInfo on scoreInfo.stuID=stuInfo.stuID group by +scoreInfo.stuID,scoreInfo.courseID,courseName,courseMarks,score +--7.查询出没有参加考试的学生的学号和姓名 +select stuInfo.stuID,stuName from stuInfo left join scoreInfo on stuInfo.stuID=scoreInfo.stuID group by stuInfo.stuID,stuName +--8.查询出是周六周天来报到的学生 +select * from StuInfo where datename(weekday,Time)='星期六' or datename(weekday,Time)='星期日' +--9.查询出姓名中有字母a的学生的信息 +select * from stuInfo where stuName like '%a%' +--10.查询出选修了2门课程以上的并且考试平均分在70以上的学生的学号和考试平均分以及选修课程的数量 +select stuInfo.stuID,avg(score),count(scoreInfo.courseID) from stuInfo +inner join scoreInfo on stuInfo.stuID=scoreInfo.stuID inner join +courseInfo on courseInfo.courseID=scoreInfo.courseID group by stuInfo.stuID having count(scoreInfo.courseID)>2 and avg(score)>70 \ No newline at end of file -- Gitee From f614e6bb9b5b81017a0871a024332d6e29b316a5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=90=B4=E5=AD=9D=E6=B6=B5?= <8755837+qian-5201314@user.noreply.gitee.com> Date: Tue, 30 Mar 2021 22:42:43 +0800 Subject: [PATCH 023/144] 1 --- .../SQLQuery1.sql" | 136 ++++++++++++++++++ 1 file changed, 136 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/SQLQuery1.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/SQLQuery1.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/SQLQuery1.sql" new file mode 100644 index 0000000..7b35596 --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/SQLQuery1.sql" @@ -0,0 +1,136 @@ +use master +go + +create database Student +on +( + name=Student, + filename='E:\SQL\330\Student.mdf', + size=5MB, + maxsize=10MB, + filegrowth=10% +) +log on +( + name=Student_log, + filename='E:\SQL\330\Student_log.ldf', + size=5MB, + maxsize=10MB, + filegrowth=10% +) +go + +use Student +go + +create table stuInfo +( + stuID int identity(1,1), + stuName varchar(30), + stuAge varchar(5), + stuSex varchar(6), + time datetime +) +go + +insert into stuInfo(stuName,stuAge,stuSex) +select 'Tom',19,1 union +select 'Jack',20,0 union +select 'Rose',21,1 union +select 'Lulu',19,1 union +select 'Lili',21,0 union +select 'abc',20,1 +go + +update stuInfo set time='2007-01-07 01:11:36.590' where stuID=6 +go + +create table courseInfo +( + courseID int identity(1,1), + courseName varchar(10), + courseMarks varchar(6) +) +go + +insert into courseInfo(courseName,courseMarks)values('JavaBase',4),('HTML',2),('JavaScript',2),('SqlBase',2) +go + +create table scoreInfo +( + scoreID int identity(1,1), + stuID int, + courseID int, + score int, +) +go + +insert into scoreInfo(stuID,courseID,score) +select 1,1,80 union +select 1,2,85 union +select 1,4,50 union +select 2,1,75 union +select 2,3,45 union +select 2,4,75 union +select 3,1,45 union +select 4,1,95 union +select 4,2,75 union +select 4,3,90 union +select 4,4,45 +go + +--题目: +--1.查询出每个学生 所选修的课程的数量 和所选修的课程的考试的平均分 + +select stuName 学生姓名,count(s.stuID)课程数量,AVG(score)考试平均分 from scoreInfo s +inner join stuInfo i on i.stuID=s.stuID +group by s.stuID,stuName + +--2.查询出每门课程的选修的学生的个数和学生考试的总分 + +select courseName 课程名称,COUNT(s.courseID)学生个数,SUM(score)考试总分 from scoreInfo s +inner join courseInfo c on c.courseID=s.courseID +group by s.courseID,courseName + + +--3.查询出性别一样并且年龄一样的学生的信息 + +select * from stuInfo A +left join stuInfo B on B.stuID = A.stuID +where B.stuAge=A.stuAge and A.stuSex=B.stuSex + +--4.查询出学分一样的课程信息 + +select * from courseInfo A +right join courseInfo B on B.courseMarks=A.courseMarks + +--5.查询出参加了考试的学生的学号,姓名,课程号和分数 +select A.stuID,stuName,courseID,score from stuInfo A +right join scoreInfo B on A.stuID=B.stuID + +--6.查询出参加了考试的学生的学号,课程号,课程名,课程学分和分数 + +select A.stuID 学生学号,C.courseID 课程号,C.courseName,C.courseMarks,score from stuInfo A +right join scoreInfo B on A.stuID=B.stuID +left join courseInfo C on C.courseID=B.courseID + +--7.查询出没有参加考试的学生的学号和姓名 +select B.stuID,B.stuName from scoreInfo A +right join stuInfo B on A.stuID=B.stuID +except +select A.stuID,stuName from stuInfo A +right join scoreInfo B on A.stuID=B.stuID +left join courseInfo C on C.courseID=B.courseID + +--8.查询出是周六周天来报到的学生 + + +--9.查询出姓名中有字母a的学生的信息 + +select * from stuInfo where stuName like '%a%' + +--10.查询出选修了2门课程以上的并且考试平均分在70以上的学生的 学号 和 考试平均分以及 选修课程的数量 + +select stuID 学生学号,AVG(score)考试平均分,COUNT(stuID)课程数量 from scoreInfo +group by stuID +having COUNT(stuID)>2 and AVG(score)>70 \ No newline at end of file -- Gitee From f5bdf6a943c5290989fe6545f3fd49b0ee847656 Mon Sep 17 00:00:00 2001 From: zhangmingxuanzhang <454673097@qq.com> Date: Tue, 30 Mar 2021 23:08:08 +0800 Subject: [PATCH 024/144] di11 --- .../SQLQuery1.sql" | 108 ++++++++++++++++++ 1 file changed, 108 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\274\240\351\223\255\350\275\251/SQLQuery1.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\274\240\351\223\255\350\275\251/SQLQuery1.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\274\240\351\223\255\350\275\251/SQLQuery1.sql" new file mode 100644 index 0000000..d4a6965 --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\274\240\351\223\255\350\275\251/SQLQuery1.sql" @@ -0,0 +1,108 @@ +use master +go +create database Student + +on( +name = 'Student', +filename='D:\Student01.mdf', +size=5, +maxsize=10, +filegrowth=10% + +) +log on( +name = 'Student_log', +filename='D:\Student01_log.ldf', +size=5, +maxsize=10, +filegrowth=10% + +) +go + + + use Student + + go + + create table stuInfo + ( + stuId int primary key identity (1,1) not null, + stuname varchar(10) not null, + stuAge int not null, + stuSex char(1) check(stuSex=0 or stuSex=1) not null, + time date + ) + + create table courseInfo + ( + courseId int primary key identity (1,1) not null, + courseName varchar(10) not null, + courseMaxs int not null, + + ) + create table scoreInfo + ( + scoreLd int primary key identity (1,1) not null, + stuId int, + courseId int, + score int + + ) + go + insert into stuInfo values('Tom',19,1,null), + ('Jack',20,0,null), + ('Rose',21,1,null), + ('Luli',19,1,null), + ('Lili',21,0,null), + ('abc',20,1,'2007-01-07 01:11:36.590') + + insert into courseInfo values + ('JayaBase',4), + ('HTML',2), + ('JavaScript',2), + ('SqlBase',2) + + insert into scoreInfo(stuId,courseId,score) values + (1,1,80), + (1,2,85), + (1,4,50), + (2,1,75), + (2,3,45), + (2,4,75), + (3,1,45), + (4,1,95), + (4,2,75), + (4,3,90), + (4,4,45) + +-- 1.查询出每个学生所选修的课程的数量和所选修的课程的考试的平均分 +select * from courseInfo +select * from scoreInfo +select * from stuInfo +select stuname 学生, courseName 选修课程,courseMaxs 课程的数量,avg (score)考试平均分 from courseInfo s inner join scoreInfo r on s.courseId=r.courseId inner join stuInfo I on r.courseId=I.stuId group by stuname, courseName ,courseMaxs ,score +--2.查询出每门课程的选修的学生的个数和学生考试的总分 +select courseName 课程名称,COUNT(*) 选修学生个数,sum(score)考试总分 from scoreInfo s inner join stuInfo i on i.stuID = s.stuID inner join courseInfo c on c.courseID = s.courseID group by courseName +--3.查询出性别一样并且年龄一样的学生的信息 +select A.stuName 学生, A.stuSex 性别,A.stuAge 年龄 from stuInfo A inner join stuInfo B on (A.stuID <> B.stuID) and(A.stuSex = B.stuSex) and (A.stuAge = B.stuAge) +--4.查询出学分一样的课程信息 +select distinct A.courseName,A.courseMaxs from courseInfo A inner join courseInfo B on (A.courseID <> B.courseID) and +(A.courseMaxs = B.courseMaxs) + +--5.查询出参加了考试的学生的学号,姓名,课程号和分数 +select A.stuID 学号,A.stuName 姓名,C.courseID 课程号,C.score 分数 from stuInfo A inner join scoreInfo C on A.stuID = C.stuID + +--6.查询出参加了考试的学生的学号,课程号,课程名,课程学分和分数 +select C.stuID 学号,C.courseID 课程号,A.courseName 课程名,A.courseMaxs 课程学分, C.score 分数 from courseInfo A inner join scoreInfo C on A.courseID = C.courseID + +--7.查询出没有参加考试的 学生的学号 和 姓名 +select A.stuID 学号,A.stuName 姓名 from stuInfo A inner join scoreInfo B on A.stuID = B.stuID where B.score is null + +--8.查询出是周六周天来报到的学生 +select * from stuInfo where datename(weekday,Time)='星期六' or datename(weekday,Time)='星期日' + +--9.查询出姓名中有字母a的学生的信息 +select * from stuInfo where stuName like '%a%' + +--10.查询出选修了 2门课程以上的 并且 考试平均分在70以上 的学生的学号 和考试平均分 以及选修课程的数量 +select A.stuID 学号,COUNT(*)课程数量,AVG(score)平均分 from stuInfo A inner join scoreInfo B on A.stuID = B.stuID group by A.stuID having COUNT(*)>2 and AVG(score)>70 \ No newline at end of file -- Gitee From ac0fce6f721ef093a0a8fe845800fe575bef99f6 Mon Sep 17 00:00:00 2001 From: lazy3698 <2820608163@qq.com> Date: Tue, 30 Mar 2021 23:24:47 +0800 Subject: [PATCH 025/144] =?UTF-8?q?sql=E4=BD=9C=E4=B8=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SQLQuery3.sql" | 100 ++++++++++++++++++ 1 file changed, 100 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\216\213\350\277\234\346\226\271/SQLQuery3.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\216\213\350\277\234\346\226\271/SQLQuery3.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\216\213\350\277\234\346\226\271/SQLQuery3.sql" new file mode 100644 index 0000000..74e2bac --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\216\213\350\277\234\346\226\271/SQLQuery3.sql" @@ -0,0 +1,100 @@ +use master +go +create database bmp +on +( + name='bmp', + filename='D:\bmp.mdf', + size=5mb, + maxsize=50mb, + filegrowth=10% +) +log on +( + name='bmp_log', + filename='D:\bmp_log.ldf', + size=5mb, + maxsize=50mb, + filegrowth=10% +) +use bmp +go +create table stuInfo +( + stuID int primary key identity(1,1) not null, + stuName char(10) not null, + stuAge int not null, + stuSex int not null, + time datetime +) +create table courseInfo +( + courseID int primary key identity(1,1), + courseName char(10) not null, + courseMarks int not null +) +create table scoreInfo +( + scoreID int primary key identity(1,1), + stuID int not null references stuInfo(stuID), + courseID int not null references courseInfo(courseID), + score int not null +) +select * from stuInfo +insert into stuInfo values +('Tom',19,1,NULL), +('Jack',20,0,NULL), +('Rose',21,1,NULL), +('Lulu',19,1,NULL), +('Lili',21,0,NULL), +('abc',20,1,'2007-01-07 01:11:36.590') +insert into courseInfo values +('JavaBase',4), +('HTML',2), +('JavaScript',2), +('SqlBase',2) +select * from courseInfo +insert into scoreInfo values +(1,1,80), +(1,2,85), +(1,4,50), +(2,1,75), +(2,3,45), +(2,4,75), +(3,1,45), +(4,1,95), +(4,2,75), +(4,3,90), +(4,4,45) +select * from scoreInfo +--1.查询出每个学生所选修的课程的数量和所选修的课程的考试的平均分 +select stuName 学生,COUNT(courseName) 选修的课程的数量,AVG(score) 考试的平均分 from stuInfo SI,courseInfo CI, scoreInfo S +where SI.stuID = S.stuID and CI.courseID = S.courseID group by stuName +--2.查询出每门课程的选修的学生的个数和学生考试的总分 +select courseName 各门课程,COUNT(stuName) 学生的个数,sum(score) 学生考试的总分 from stuInfo SI,courseInfo CI, scoreInfo S +where SI.stuID = S.stuID and CI.courseID = S.courseID group by courseName +--3.查询出性别一样并且年龄一样的学生的信息 +--方法一 + select * from stuInfo A join stuInfo B on A.stuName<>B.stuName and A.stuAge=B.stuAge and A.stusex=B.stusex + --方法二 + select * from stuInfo B where (select COUNT(*) from stuInfo where stuAge=B.stuAge and stuSex=B.stuSex)>1 +--4.查询出学分一样的课程信息 +select * from courseInfo A inner join courseInfo B on A.courseMarks = B.courseMarks and A.courseID<>B.courseID +--5.查询出参加了考试的学生的学号,姓名,课程号和分数 +select stuInfo.stuID 学生学号,stuName 学生姓名,courseID 课程号,score 分数 +from stuInfo inner join scoreInfo on stuInfo.stuID = scoreInfo.stuID +--6.查询出参加了考试的学生的学号,课程号,课程名,课程学分和分数 +select stuInfo.stuID 学生学号,stuName 学生姓名,scoreInfo.courseID 课程号,courseMarks 课程学分,score 分数 +from scoreInfo inner join stuInfo on scoreInfo.stuID = stuInfo.stuID inner join courseInfo +on scoreInfo.courseID = courseInfo.courseID +--7.查询出没有参加考试的学生的学号和姓名 +select stuInfo.stuID,stuName +from stuInfo left join scoreInfo +on stuInfo.stuID=scoreInfo.stuID group by stuInfo.stuID,stuName +--8.查询出是周六周天来报到的学生 +select * from StuInfo where datename(weekday,Time)='星期六' or datename(weekday,Time)='星期日' +--9.查询出姓名中有字母a的学生的信息 +select * from stuInfo where stuName like '%a%' +--10.查询出选修了2门课程以上的并且考试平均分在70以上的学生的学号和考试平均分以及选修课程的数量 +select stuInfo.stuID 学号,COUNT(courseID) 选修课程的数量, AVG(score) 考试平均分 +from stuInfo join scoreInfo on stuInfo.stuID = scoreInfo.stuID group by stuInfo.stuID having COUNT(courseID)>2 and AVG(score)>70 -- Gitee From 8d3a4cb923d5d8da2f20e865a25b357bddcf77ec Mon Sep 17 00:00:00 2001 From: lazy3698 <2820608163@qq.com> Date: Tue, 30 Mar 2021 23:31:36 +0800 Subject: [PATCH 026/144] =?UTF-8?q?=E4=BD=9C=E4=B8=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\346\235\216\344\274\237/SQLQuery1.sql" | 97 +++++++++++++++++++ 1 file changed, 97 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\235\216\344\274\237/SQLQuery1.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\235\216\344\274\237/SQLQuery1.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\235\216\344\274\237/SQLQuery1.sql" new file mode 100644 index 0000000..2d50e58 --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\235\216\344\274\237/SQLQuery1.sql" @@ -0,0 +1,97 @@ +use master +go +create database ccc +on +( +name='ccc', +filename='D:\ccc\text.mdf', +size=5mb, +maxsize=50mb, +filegrowth=10% +) +log on +( +name='ccc_log', +filename='D:\ccc\text_log.ldf', +size=5mb, +maxsize=50mb, +filegrowth=10% +) +use ccc +go +create table StuInfo +( +StuId int primary key identity(1,1) not null, +StuName char(10) not null, +StuAge int not null, +StuSex nvarchar(2) not null, +time datetime +) +create table CourseInfo +( +CourseId int primary key identity(1,1) not null, +CourseName char(10) not null, +Coursemarks int not null +) +create table ScoreInfo +( +ScoreId int primary key identity(1,1) not null, +StuId int not null references StuInfo(StuId), +CourseId int not null references CourseInfo(CourseId), +Score int not null +) +insert into StuInfo values +('Tom',19,1,Null), +('Jack',20,0,Null), +('Rose',21,1,Null), +('Lulu',19,1,Null), +('Lili',21,0,Null), +('abc',20,1,'2007-01-07 01:11:36.590') +select * from StuInfo +insert into CourseInfo values +('JaveBase',4), +('HTML',2), +('IavaScript',2), +('SqlBase',2) +select * from CourseInfo +insert into ScoreInfo values +(1,1,80), +(1,2,85), +(1,4,50), +(2,1,75), +(2,3,45), +(2,4,75), +(3,1,45), +(4,1,95), +(4,2,75), +(4,3,90), +(4,4,45) +select * from ScoreInfo +--1.查询出每个学生所选修的课程的数量和所选修的课程的考试的平均分 +select stuName,count(*),avg(score) from courseInfo inner join scoreInfo on +courseInfo.courseID=scoreInfo.courseID inner join stuInfo on scoreInfo.stuID=stuInfo.stuID group by stuName +--2.查询出每门课程的选修的学生的个数和学生考试的总分 +select courseName 课程名称,COUNT(scoreInfo.courseID) 学生个数,SUM(score) 学生考试的总分 from courseInfo inner join scoreInfo on courseInfo.courseID = scoreInfo.courseID GROUP BY scoreInfo.courseID,courseName +--3.查询出性别一样并且年龄一样的学生的信息 + select * from stuInfo A join stuInfo B on A.stuName<>B.stuName and A.stuAge=B.stuAge and A.stusex=B.stusex +--4.查询出学分一样的课程信息 +select * from courseInfo A inner join courseInfo B on A.courseMarks = B.courseMarks and A.courseID<>B.courseID +--5.查询出参加了考试的学生的学号,姓名,课程号和分数 +select stuInfo.stuID 学生学号,stuName 学生姓名,courseID 课程号,score 分数 +from stuInfo inner join scoreInfo on stuInfo.stuID = scoreInfo.stuID +--6.查询出参加了考试的学生的学号,课程号,课程名,课程学分和分数 +select stuInfo.stuID 学生学号,stuName 学生姓名,scoreInfo.courseID 课程号,courseMarks 课程学分,score 分数 +from scoreInfo inner join stuInfo on scoreInfo.stuID = stuInfo.stuID inner join courseInfo +on scoreInfo.courseID = courseInfo.courseID +--7.查询出没有参加考试的学生的学号和姓名 +select stuInfo.stuID,stuName +from stuInfo left join scoreInfo +on stuInfo.stuID=scoreInfo.stuID group by stuInfo.stuID,stuName +--8.查询出是周六周天来报到的学生 +select * from StuInfo where datename(weekday,Time)='星期六' or datename(weekday,Time)='星期日' +--9.查询出姓名中有字母a的学生的信息 +select * from stuInfo where stuName like '%a%' +--10.查询出选修了2门课程以上的并且考试平均分在70以上的学生的学号和考试平均分以及选修课程的数量 +select stuInfo.stuID,avg(score),count(scoreInfo.courseID) from stuInfo +inner join scoreInfo on stuInfo.stuID=scoreInfo.stuID inner join +courseInfo on courseInfo.courseID=scoreInfo.courseID group by stuInfo.stuID having count(scoreInfo.courseID)>2 and avg(score)>70 -- Gitee From bcf8da2e86a1bb2fe1e5b3485fec25ca37a22813 Mon Sep 17 00:00:00 2001 From: polyhymnia <2281017491@qq.com> Date: Wed, 31 Mar 2021 09:54:50 +0800 Subject: [PATCH 027/144] =?UTF-8?q?=E5=AE=8B=E5=98=89=E7=82=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SQLQuery1.sql" | 115 ++++++++++++++++++ 1 file changed, 115 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\256\213\345\230\211\347\202\234/SQLQuery1.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\256\213\345\230\211\347\202\234/SQLQuery1.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\256\213\345\230\211\347\202\234/SQLQuery1.sql" new file mode 100644 index 0000000..16471a5 --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\256\213\345\230\211\347\202\234/SQLQuery1.sql" @@ -0,0 +1,115 @@ +use master +go + +create database Student +on +( + name = 'Student', + filename = 'D:\sql\Student.mlf', + size = 5mb, + maxsize=50mb, + filegrowth = 10% +) +log on +( + name = 'Student_log', + filename = 'D:\sql\Student_log.mlf', + size = 5mb, + maxsize=50mb, + filegrowth = 10% +) +go +use Student +go + +create table StuInfo +( + stuId int primary key identity(1,1), + stuName nvarchar(10), + stuAge int, + stuSex int, + time datetime +) +create table CourseInfo +( + courseId int primary key identity(1,1), + courseName varchar(10), + courseMarks int +) + +create table ScoreInfo +( + scoreId int identity, + stuID int references StuInfo(stuid), + courseID int references CourseInfo(courseId), + score int +) + +insert into Stuinfo values +('Tom',19,1,NULL), +('Jack',20,0,NULL), +('Rose',21,1,NULL), +('Lulu',19,1,NULL), +('Lili',21,0,NULL), +('abc',20,1,'2007-01-07 01:11:36.590' ) +select * from Stuinfo + +drop table ScoreInfo +drop table CourseInfo +insert into CourseInfo values +('JavaBase',4), +('HTML',2), +('JavaScript',2), +('SqlBase',2) + +insert into ScoreInfo values +(1,1,80), +(1,2,85), +(1,4,50), +(2,1,75), +(2,3,45), +(2,4,75), +(3,1,45), +(4,1,95), +(4,2,75), +(4,3,90), +(4,4,45) + +select * from Stuinfo +select * from CourseInfo +select * from scoreInfo +--题目: +--1.查询出每个学生所选修的课程的数量和所选修的课程的考试的平均分 +select StuName,count(courseid)选修的课程的数量,avg(score)选修的课程的考试的平均分 from Stuinfo S +left join scoreinfo SC on S.StuID = SC.stuid group by SC.StuID,StuName + +--2.查询出每门课程的选修的学生的个数和学生考试的总分 +select count(coursename)选修的学生的个数,sum(score)学生考试的总分 from courseinfo C +left join scoreinfo SC on C.courseid=SC.courseid group by SC.courseid + +--3.查询出性别一样并且年龄一样的学生的信息 +select A.*from StuInfo A , StuInfo B WHERE A.stuAge=B.stuAge and A.stuSex = B.stuSex AND A.stuId != B.stuId + +--4.查询出学分一样的课程信息 +select A.courseID ,A.coursemarks, B.coursemarks from courseinfo A inner join courseinfo B on A.coursemarks = B.coursemarks + +--5.查询出参加了考试的学生的学号,姓名,课程号和分数 +select S.stuId,stuName,SC.courseid,SCORE from scoreinfo SC +inner join courseinfo C on SC.courseid=C.courseid +inner join StuInfo S on SC.stuid = S.stuId + +--6.查询出参加了考试的学生的学号,课程号,课程名,课程学分和分数 +select S.stuId,stuName,SC.courseid,C.coursename,SCORE from scoreinfo SC +inner join courseinfo C on SC.courseid=C.courseid +inner join StuInfo S on SC.stuid = S.stuId + +--7.查询出没有参加考试的学生的学号和姓名 +select * from StuInfo S +left join scoreinfo SC on SC.stuid= S.stuId where score is NULL + +--9.查询出姓名中有字母a的学生的信息 +select * from StuInfo WHERE stuName like '%a%' + +--10.查询出选修了2门课程以上的并且考试平均分在70以上的学生的学号和考试平均分以及选修课程的数量 +select SC.stuid, StuName,count(courseid)选修的课程的数量,avg(score)选修的课程的考试的平均分 from Stuinfo S +left join scoreinfo SC on S.StuID = SC.stuid group by SC.StuID,StuName having count(courseid)>=2 and avg(score)>=70 \ No newline at end of file -- Gitee From be0a074ee7adac97bcb7dfcf7059700b7b3fa577 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B1=E6=9E=97=E6=9E=AB?= <2905363801@qq.com> Date: Wed, 31 Mar 2021 09:55:48 +0800 Subject: [PATCH 028/144] =?UTF-8?q?=E9=82=B1=E6=9E=97=E6=9E=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\344\275\234\344\270\232\344\270\200.sql" | 91 +++++++++++++++++++ 1 file changed, 91 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\202\261\346\236\227\346\236\253/\344\275\234\344\270\232\344\270\200.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\202\261\346\236\227\346\236\253/\344\275\234\344\270\232\344\270\200.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\202\261\346\236\227\346\236\253/\344\275\234\344\270\232\344\270\200.sql" new file mode 100644 index 0000000..e17b165 --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\202\261\346\236\227\346\236\253/\344\275\234\344\270\232\344\270\200.sql" @@ -0,0 +1,91 @@ +use master +go + +create database student +go + +use student +go + +create table stuInfo +( + stuID int primary key identity(1,1) not null, + stuName char(4)unique not null, + stuAge char(2)not null, + stuSex char(1) default(1) check(stuSex='1' or stuSex='0'), + time datetime +) + +create table courseInfo +( + courseID int primary key identity(1,1) not null, + courseName char(10) not null, + courseMarks char(1) not null +) + +create table scoreInfo +( + scoreID int primary key identity(1,1) not null, + stuID int references stuInfo(stuID), + courseID int references courseInfo(courseID), + score int not null +) + +insert into stuInfo(stuName,stuAge,stuSex,time) values +('Tom','19','1',null), +('Jack','20','0',null), +('Rose','21','1',null), +('Lulu','19','1',null), +('Lili','21','0',null), +('abc','20','1','2007-01-07 01:11:36.590') + +insert into courseInfo(courseName,courseMarks) values +('JavaBase','4'), +('HTML','2'), +('JavaScript','2'), +('SqlBase','2') + +insert into scoreInfo(stuID,courseID,score) values +('1','1','80'), +('1','2','85'), +('1','4','50'), +('2','1','75'), +('2','3','45'), +('2','4','75'), +('3','1','45'), +('4','1','95'), +('4','2','75'), +('4','3','90'), +('4','4','45') + +--题目: +--1.查询出每个学生所选修的课程的数量和所选修的课程的考试的平均分 +select stuinfo.stuID 学生,count(courseInfo.courseID) 课程数量,avg(score) 考试平均分 from scoreInfo +right join courseInfo on scoreInfo.courseID = courseInfo.courseID +right join stuInfo on scoreInfo.stuID = stuInfo.stuID group by stuInfo.stuID +--2.查询出每门课程的选修的学生的个数和学生考试的总分 +select courseInfo.courseID 课程,count(stuID) 学生数,sum(score) 考试总分 from scoreInfo +inner join courseInfo on scoreInfo .courseID =courseInfo.courseID group by courseInfo.courseID +--3.查询出性别一样并且年龄一样的学生的信息 +select * from stuInfo m where (select count(*) from stuInfo where stuAge=m.stuAge and stuSex=m.stuSex)>1 +--4.查询出学分一样的课程信息 +select * from courseInfo m where (select count(*) from courseInfo where courseMarks=m.courseMarks)>1 +--5.查询出参加了考试的学生的学号,姓名,课程号和分数 +select stuInfo.stuID 学号,stuName 姓名,courseInfo.courseID 课程号,score 分数 from scoreInfo +inner join courseInfo on scoreInfo.courseID = courseInfo.courseID +inner join stuInfo on scoreInfo.stuID = stuInfo.stuID group by stuInfo.stuID,courseInfo.courseID,scoreInfo.score,stuInfo.stuName +--6.查询出参加了考试的学生的学号,课程号,课程名,课程学分和分数 +select stuInfo.stuID 学号,courseInfo.courseID 课程号,courseInfo.courseID 课程名,courseInfo.courseMarks 课程学分,score 分数 from scoreInfo +inner join courseInfo on scoreInfo.courseID = courseInfo.courseID +inner join stuInfo on scoreInfo.stuID = stuInfo.stuID group by stuInfo.stuID,courseInfo.courseID,scoreInfo.score,courseInfo.courseID,courseInfo.courseMarks +--7.查询出没有参加考试的学生的学号和姓名 +select stuInfo.stuID 学号,stuName 姓名 from scoreInfo +right join stuInfo on scoreInfo.stuID = stuInfo.stuID +where score is null or score='' +--8.查询出是周六周天来报到的学生 +select * from StuInfo where datename(weekday,Time)='星期六' or datename(weekday,Time)='星期日' +--9.查询出姓名中有字母a的学生的信息 +select * from stuInfo where stuName like '%a%' +--10.查询出选修了2门课程以上的并且考试平均分在70以上的学生的学号和考试平均分以及选修课程的数量 +select s.StuID 学号 , COUNT(*) 课程数量,AVG(Score) 平均分 from ScoreInfo I inner join StuInfo S on I.StuID=S.StuID +group by S.StuID having COUNT(*)>2 and AVG(Score)>70 \ No newline at end of file -- Gitee From 705bd0db256cd48fed8136f8183f22f331420e04 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=84=A6=E6=98=8E=E5=90=9B?= <3223613762@qq.com> Date: Wed, 31 Mar 2021 10:01:09 +0800 Subject: [PATCH 029/144] =?UTF-8?q?=E7=84=A6=E6=98=8E=E5=90=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../3.30.sql" | 86 +++++++++++++++++++ 1 file changed, 86 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\204\246\346\230\216\345\220\233/3.30.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\204\246\346\230\216\345\220\233/3.30.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\204\246\346\230\216\345\220\233/3.30.sql" new file mode 100644 index 0000000..4c83076 --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\204\246\346\230\216\345\220\233/3.30.sql" @@ -0,0 +1,86 @@ +use master +go +create database Student +on( + name = 'Student.mdf', + filename='D:\Student.mdf', + size=5, + maxsize=10, + filegrowth=15% +) +log on( + name = 'Student_log.ldf', + filename='D:\Student_log.ldf', + size=5, + maxsize=10, + filegrowth=15% +) +go +use Student +go +create table stuInfo +( + stuID int primary key identity(1,1), + stuName nvarchar(7) not null, + stuAge int not null, + stuSex nvarchar(1) not null, + time datetime +) +create table courseInfo +( + courseID int primary key identity(1,1), + courseName nvarchar(10) not null, + courseMarks nvarchar(5) +) +create table scoreInfo +( + scoreID int primary key identity(1,1), + stuID int references stuInfo(stuID), + courseID int references courseInfo(courseID), + score int not null +) +insert into stuInfo (stuName,stuAge,stuSex,time) values ('Tom',19,'1',null), +('Jack',20,'0',null),('Rose',21,'1',null),('Lulu',19,'1',null), +('Lili',21,'0',null),('abc',20,'1','2007-01-07 01:11:36.590') +insert into courseInfo (courseName,courseMarks) values ('JavaBase','4'), +('HTML','2'),('JavaScript','2'),('SqlBase','2') +insert into scoreInfo(stuID,courseID,score) +values('1','1','80'),('1','2','85'),('1','4','50'),('2','1','75'),('2','3','45'), +('2','4','75'),('3','1','45'),('4','1','95'),('4','2','75'),('4','3','90'),('4','4','95') +--有如图所示的三张表结构,学生信息表(stuInfo),课程信息表(courseInfo),分数信息表(scoreInfo) +--题目: +select * from stuInfo +select * from courseInfo +select * from scoreInfo + +--1.查询出每个学生所选修的课程的数量和所选修的课程的考试的平均分 +select stuName 学生 ,count(courseInfo.courseID) 课程数量,AVG(score) 平均分 from stuInfo inner join scoreInfo +on stuInfo.stuID=scoreInfo.stuID inner join courseInfo on courseInfo.courseID=scoreInfo.courseID group by + stuName +--2.查询出每门课程的选修的学生的个数和学生考试的总分 +select courseName 课程名称, COUNT(scoreInfo.courseID) 学生个数 ,sum(score) 总分 from stuInfo inner join scoreInfo +on stuInfo.stuID=scoreInfo.stuID inner join courseInfo on courseInfo.courseID=scoreInfo.courseID group by + scoreInfo.courseID,courseName +--3.查询出性别一样并且年龄一样的学生的信息 +select * from stuInfo a left join stuInfo b on a.stuSex=b.stuSex and a.stuAge=b.stuAge +--4.查询出学分一样的课程信息 +select * from courseInfo A inner join courseInfo B on A.courseMarks = B.courseMarks and A.courseID<>B.courseID +--5.查询出参加了考试的学生的学号,姓名,课程号和分数 +select stuInfo.stuID 学号,stuInfo.stuName 姓名,courseInfo.courseID 课程号, scoreInfo.score 分数 from stuInfo inner join scoreInfo +on stuInfo.stuID=scoreInfo.stuID inner join courseInfo on courseInfo.courseID=scoreInfo.courseID +--6.查询出参加了考试的学生的学号,课程号,课程名,课程学分和分数 +select stuInfo.stuID 学号,courseInfo.courseID 课程号,courseInfo.courseMarks 课程学分, scoreInfo.score 分数 from stuInfo inner join scoreInfo +on stuInfo.stuID=scoreInfo.stuID inner join courseInfo on courseInfo.courseID=scoreInfo.courseID +--7.查询出没有参加考试的学生的学号和姓名 +select stuInfo.stuID 学号,stuInfo.stuName 姓名 from stuInfo inner join scoreInfo +on stuInfo.stuID=scoreInfo.stuID inner join courseInfo on courseInfo.courseID=scoreInfo.courseID where +stuInfo.stuID is null and stuInfo.stuName is null +--8.查询出是周六周天来报到的学生 +select * from StuInfo where datename(weekday,time)='星期六' or datename(weekday,time)='星期日' +--9.查询出姓名中有字母a的学生的信息 +select * from StuInfo where stuName like '%a%' +--10.查询出选修了2门课程以上的并且考试平均分在70以上的学生的学号和考试平均分以及选修课程的数量 +select stuInfo.stuID 学号,avg(scoreInfo.score) 考试平均分,COUNT(courseInfo.courseID) 选修课程的数量 from stuInfo inner join scoreInfo +on stuInfo.stuID=scoreInfo.stuID inner join courseInfo on courseInfo.courseID=scoreInfo.courseID +GROUP BY stuInfo.stuID HAVING COUNT(courseInfo.courseID)>=2 +AND avg(scoreInfo.score)>=70 -- Gitee From f8c40b2062168e70e4db877226a3449742fdeba0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E5=98=A4=E6=8D=89=E5=B0=8F=E7=8C=BF?= <2030676100@qq.com> Date: Wed, 31 Mar 2021 10:01:13 +0800 Subject: [PATCH 030/144] =?UTF-8?q?=E6=96=B0=E5=BB=BA=20=E8=A2=81=E5=9D=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\350\242\201\345\235\232/.keep" | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\242\201\345\235\232/.keep" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\242\201\345\235\232/.keep" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\242\201\345\235\232/.keep" new file mode 100644 index 0000000..e69de29 -- Gitee From 490ded8d8ac2ba64d567a790e2bb52b2d6d58cd6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=96=9B=E9=87=91=E5=81=A5?= <2078165420@qq.com> Date: Wed, 31 Mar 2021 10:01:20 +0800 Subject: [PATCH 031/144] =?UTF-8?q?=E8=96=9B=E9=87=91=E5=81=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...1\344\270\200\344\275\234\344\270\232.sql" | 85 +++++++++++++++++++ 1 file changed, 85 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\226\233\351\207\221\345\201\245/\347\254\254\345\215\201\344\270\200\344\275\234\344\270\232.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\226\233\351\207\221\345\201\245/\347\254\254\345\215\201\344\270\200\344\275\234\344\270\232.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\226\233\351\207\221\345\201\245/\347\254\254\345\215\201\344\270\200\344\275\234\344\270\232.sql" new file mode 100644 index 0000000..7472e6b --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\226\233\351\207\221\345\201\245/\347\254\254\345\215\201\344\270\200\344\275\234\344\270\232.sql" @@ -0,0 +1,85 @@ +use master +go +create database students +on +( +name='students', +filename='D:\students.mdf', +size=10mb, +maxsize=50mb, +filegrowth=10% +) +log +on +( +name='students_log', +filename='D:\students_log.ldf', +size=10mb, +maxsize=50mb, +filegrowth=10% +) +go + +use students +go + +create table studentinfo +( +stuid int primary key identity, +stuname nvarchar(10) not null, +stuage int not null , +stusex int check(stusex=1 or stusex=0), +time datetime, +) +create table courseinfo +( +courseid int primary key identity , +coursename nvarchar(20), +coursemarks int , +) +create table scoreinfo +( +scoreid int identity , +stuid int references studentinfo(stuid), +courseid int references courseinfo(courseid), +score int +) +insert into studentinfo(stuname,stuage,stusex) values +('Tom',19,1),('Jack',20,0),('Rose',21,1), +('Lulu',19,1),('Lili',21,0),('abc',20,1) + +update studentinfo set time='2007-01-07 01:11:36.590'where stuid=6 + +insert into courseinfo values +('Javabase',4),('HTML',2),('JavaScript',2),('Sqlbase',2) + +insert into scoreinfo (stuid,courseid,score) values +(1,1,80),(1,2,85),(1,4,50),(2,1,75),(2,3,45),(2,4,75), +(3,1,45),(4,1,95),(4,2,75),(4,3,90),(4,4,45) +select * from studentinfo +select * from courseinfo +select * from scoreinfo + +--有如图所示的三张表结构,学生信息表(stuInfo),课程信息表(courseInfo),分数信息表(scoreInfo) + +--题目: +--1.查询出 每个学生所选修的 课程的数量和 所选修的课程的考试的平均分 +select ST.stuname,count(*) 课程的数量,avg(score) 平均分 from scoreinfo S inner join studentinfo ST on S.stuid=ST.stuid group by ST.stuname +--2.查询出 每门课程的选修的 学生的个数和 学生考试的总分 +select C.coursename,count(*) 学生的个数,sum(score)学生考试的总分 from scoreinfo S inner join courseinfo C on S.courseid=C.courseid group by C.coursename +--3.查询出性别一样并且年龄一样的学生的信息 +select A.* from studentinfo A inner join studentinfo B on(A.stuID <> B.stuID) and (A.stuSex = B.stuSex) and (A.stuAge = B.stuAge) +--4.查询出学分一样的课程信息 +select distinct A.* from courseinfo A inner join courseinfo B on(A.courseid<>B.courseid) and (A.coursemarks=B.coursemarks) +--5.查询出参加了考试的学生的学号,姓名,课程号和分数 +select st.stuID 学号, st.stuName 姓名, s.courseID 课程号, s.score 分数 from scoreinfo S inner join studentinfo ST on S.stuid=ST.stuid +--6.查询出参加了 考试的学生 的学号,课程号,课程名,课程学分和分数 +select s.stuID 学号, s.courseID 课程号, c.courseName 课程名, C.coursemarks 课程学分, s.score 分数 from courseinfo C inner join scoreinfo S on C.courseid=S.courseid +--7.查询出没有参加考试的学生的学号和姓名 +select S.stuID, S.stuName from studentinfo S left join scoreinfo SC on S.stuid=SC.stuid where SC.scoreid is null +--8.查询出是周六周天来报到的学生 +select * from studentinfo where DATENAME(dw, time) = '星期六' or DATENAME(dw, time) = '星期日' +--9.查询出姓名中有字母a的学生的信息 +select * from studentinfo where stuname like '%a%' +--10.查询出选修了2门课程以上的并且考试平均分在70以上的学生的学号和考试平均分以及选修课程的数量 +select stuID 学号,avg(score) 平均成绩, count(*) 选课数量 from scoreinfo group by stuid having count(*) > 2 and round(avg(cast(score as float)), 1) > 70 -- Gitee From d4c67d3cd9ff6d0cddff5a6fd5891f4c0490d0e8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E5=98=A4=E6=8D=89=E5=B0=8F=E7=8C=BF?= <2030676100@qq.com> Date: Wed, 31 Mar 2021 10:02:05 +0800 Subject: [PATCH 032/144] =?UTF-8?q?=E7=AC=AC=E5=8D=81=E4=B8=80=E6=AC=A1?= =?UTF-8?q?=E4=BD=9C=E4=B8=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\350\242\201\345\235\232/SQLQueryq1.sql" | 75 +++++++++++++++++++ 1 file changed, 75 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\242\201\345\235\232/SQLQueryq1.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\242\201\345\235\232/SQLQueryq1.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\242\201\345\235\232/SQLQueryq1.sql" new file mode 100644 index 0000000..52c5411 --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\242\201\345\235\232/SQLQueryq1.sql" @@ -0,0 +1,75 @@ +use master +go +create database stuinfo +on +( + name='stuinfo', + filename='D:\sql\stuinfo.mbf', + size=5mb, + maxsize=100mb, + filegrowth=5mb +) +log on +( + name='stuinfo_log', + filename='D:\sql\stuinfo_log.lbf', + size=5mb, + maxsize=100mb, + filegrowth=5mb +) +go +use stuinfo +go +create table stu +( + stuID int primary key identity(1,1), + stuName char(12) not null, + stuAge int not null, + stuSex char(1) check(stuSex='1' or stuSex='0'), + time char(23) +) +create table course +( + courseID int primary key identity(1,1), + courseName char(20) not null, + courseMarks int not null +) +create table score +( + scoreID int primary key identity(1,1), + stuID int references stu(stuID), + courseID int references course(courseID), + score int not null +) +insert into stu values +('Tom',19,'1','null'),('Jack',20,'0','null'),('Rose',21,'1','null'), +('Lulu',19,'1','null'),('Lili',21,'0','null'),('abc',20,'1','2007-01-07 01:11:36.590') +insert into course values +('JavaBase',4),('HTML',2),('JavaScript',2),('SqlBase',2) +insert into score values +(1,1,80),(1,2,85),(1,4,50),(2,1,75),(3,1,45),(2,4,75) +,(3,1,45),(4,1,95),(4,2,75),(4,3,90),(4,4,45) +select*from stu +select*from course +select*from score +--1.查询出 每个学生 所选修的课程的 数量和 所选修的课程的考试的 平均分 +select S.StuID 学生ID , COUNT(*) 数量 , AVG(Score) 平均分 from StuInfo S inner join ScoreInfo I on S.StuID=I.StuID group by S.StuID +--2.查询出 每门课程 的选修的学生的 个数 和学生考试的 总分 +select C.CourseID 课程ID , COUNT(*) 个数 , SUM(Score) 总分 from CourseInfo C inner join ScoreInfo I on C.CourseID=I.CourseID group by C.CourseID +--3.查询出 性别一样 并且 年龄一样 的学生的信息 +select * from StuInfo S,StuInfo I where S.StuAge=I.StuAge AND S.StuSex=I.StuSex and S.StuID<>I.StuID +--4.查询出 学分一样 的 课程信息 +select * from CourseInfo C,CourseInfo I where C.CourseMarks=I.CourseMarks and C.CourseID<>I.CourseID +--5.查询出参加了考试的学生的学号,姓名,课程号和分数 +select S.StuID 学生学号 , StuName 姓名 , C.CourseID 课程号 , Score 分数 from ScoreInfo S inner join StuInfo I on S.StuID=I.StuID inner join CourseInfo C on S.CourseID=C.CourseID group by S.StuID,StuName,C.CourseID,Score +--6.查询出参加了考试的学生的学号,课程号,课程名,课程学分和分数 +select S.StuID 学生学号 , C.CourseID 课程号 , CourseName 课程名, CourseMarks 课程学分 , Score 分数 from ScoreInfo S inner join StuInfo I on S.StuID=I.StuID inner join CourseInfo C on S.CourseID=C.CourseID group by S.StuID,C.CourseID,CourseName,CourseMarks,Score +--7.查询出没有参加考试的学生的学号和姓名 +select S.StuID 学号 , StuName 姓名 from ScoreInfo I right join StuInfo S on I.StuID=S.StuID where Score is null or Score='' +--8.查询出是周六周天来报到的学生 +select * from StuInfo where datename(weekday,StuTime)='星期六' or datename(weekday,StuTime)='星期日' +--9.查询出姓名中有字母a的学生的信息 +select * from StuInfo where StuName like '%a%' or StuName like '%A%' +--10.查询出选修了2门课程以上的并且考试平均分在70以上的学生的学号和考试平均分以及选修课程的数量 +select S.StuID 学号 , COUNT(*) 课程数量 , AVG(Score) 平均分 from ScoreInfo I inner join StuInfo S on I.StuID=S.StuID group by S.StuID having COUNT(*)>2 and AVG(Score)>70 + -- Gitee From cb996d5230434d6727eca579cb9b1640fe2228bb Mon Sep 17 00:00:00 2001 From: swyuu <2190667145@qq.com> Date: Wed, 31 Mar 2021 10:02:18 +0800 Subject: [PATCH 033/144] =?UTF-8?q?=E6=96=B0=E5=BB=BA=20=E5=AD=99=E6=96=87?= =?UTF-8?q?=E8=A3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\345\255\231\346\226\207\350\243\225/.keep" | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\255\231\346\226\207\350\243\225/.keep" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\255\231\346\226\207\350\243\225/.keep" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\255\231\346\226\207\350\243\225/.keep" new file mode 100644 index 0000000..e69de29 -- Gitee From ee3c2ec2d563eb2c43f01965bc535a6b41fa9d36 Mon Sep 17 00:00:00 2001 From: swyuu <2190667145@qq.com> Date: Wed, 31 Mar 2021 10:02:59 +0800 Subject: [PATCH 034/144] =?UTF-8?q?=E5=AD=99=E6=96=87=E8=A3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../3.30.sql" | 86 +++++++++++++++++++ 1 file changed, 86 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\255\231\346\226\207\350\243\225/3.30.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\255\231\346\226\207\350\243\225/3.30.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\255\231\346\226\207\350\243\225/3.30.sql" new file mode 100644 index 0000000..4c83076 --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\255\231\346\226\207\350\243\225/3.30.sql" @@ -0,0 +1,86 @@ +use master +go +create database Student +on( + name = 'Student.mdf', + filename='D:\Student.mdf', + size=5, + maxsize=10, + filegrowth=15% +) +log on( + name = 'Student_log.ldf', + filename='D:\Student_log.ldf', + size=5, + maxsize=10, + filegrowth=15% +) +go +use Student +go +create table stuInfo +( + stuID int primary key identity(1,1), + stuName nvarchar(7) not null, + stuAge int not null, + stuSex nvarchar(1) not null, + time datetime +) +create table courseInfo +( + courseID int primary key identity(1,1), + courseName nvarchar(10) not null, + courseMarks nvarchar(5) +) +create table scoreInfo +( + scoreID int primary key identity(1,1), + stuID int references stuInfo(stuID), + courseID int references courseInfo(courseID), + score int not null +) +insert into stuInfo (stuName,stuAge,stuSex,time) values ('Tom',19,'1',null), +('Jack',20,'0',null),('Rose',21,'1',null),('Lulu',19,'1',null), +('Lili',21,'0',null),('abc',20,'1','2007-01-07 01:11:36.590') +insert into courseInfo (courseName,courseMarks) values ('JavaBase','4'), +('HTML','2'),('JavaScript','2'),('SqlBase','2') +insert into scoreInfo(stuID,courseID,score) +values('1','1','80'),('1','2','85'),('1','4','50'),('2','1','75'),('2','3','45'), +('2','4','75'),('3','1','45'),('4','1','95'),('4','2','75'),('4','3','90'),('4','4','95') +--有如图所示的三张表结构,学生信息表(stuInfo),课程信息表(courseInfo),分数信息表(scoreInfo) +--题目: +select * from stuInfo +select * from courseInfo +select * from scoreInfo + +--1.查询出每个学生所选修的课程的数量和所选修的课程的考试的平均分 +select stuName 学生 ,count(courseInfo.courseID) 课程数量,AVG(score) 平均分 from stuInfo inner join scoreInfo +on stuInfo.stuID=scoreInfo.stuID inner join courseInfo on courseInfo.courseID=scoreInfo.courseID group by + stuName +--2.查询出每门课程的选修的学生的个数和学生考试的总分 +select courseName 课程名称, COUNT(scoreInfo.courseID) 学生个数 ,sum(score) 总分 from stuInfo inner join scoreInfo +on stuInfo.stuID=scoreInfo.stuID inner join courseInfo on courseInfo.courseID=scoreInfo.courseID group by + scoreInfo.courseID,courseName +--3.查询出性别一样并且年龄一样的学生的信息 +select * from stuInfo a left join stuInfo b on a.stuSex=b.stuSex and a.stuAge=b.stuAge +--4.查询出学分一样的课程信息 +select * from courseInfo A inner join courseInfo B on A.courseMarks = B.courseMarks and A.courseID<>B.courseID +--5.查询出参加了考试的学生的学号,姓名,课程号和分数 +select stuInfo.stuID 学号,stuInfo.stuName 姓名,courseInfo.courseID 课程号, scoreInfo.score 分数 from stuInfo inner join scoreInfo +on stuInfo.stuID=scoreInfo.stuID inner join courseInfo on courseInfo.courseID=scoreInfo.courseID +--6.查询出参加了考试的学生的学号,课程号,课程名,课程学分和分数 +select stuInfo.stuID 学号,courseInfo.courseID 课程号,courseInfo.courseMarks 课程学分, scoreInfo.score 分数 from stuInfo inner join scoreInfo +on stuInfo.stuID=scoreInfo.stuID inner join courseInfo on courseInfo.courseID=scoreInfo.courseID +--7.查询出没有参加考试的学生的学号和姓名 +select stuInfo.stuID 学号,stuInfo.stuName 姓名 from stuInfo inner join scoreInfo +on stuInfo.stuID=scoreInfo.stuID inner join courseInfo on courseInfo.courseID=scoreInfo.courseID where +stuInfo.stuID is null and stuInfo.stuName is null +--8.查询出是周六周天来报到的学生 +select * from StuInfo where datename(weekday,time)='星期六' or datename(weekday,time)='星期日' +--9.查询出姓名中有字母a的学生的信息 +select * from StuInfo where stuName like '%a%' +--10.查询出选修了2门课程以上的并且考试平均分在70以上的学生的学号和考试平均分以及选修课程的数量 +select stuInfo.stuID 学号,avg(scoreInfo.score) 考试平均分,COUNT(courseInfo.courseID) 选修课程的数量 from stuInfo inner join scoreInfo +on stuInfo.stuID=scoreInfo.stuID inner join courseInfo on courseInfo.courseID=scoreInfo.courseID +GROUP BY stuInfo.stuID HAVING COUNT(courseInfo.courseID)>=2 +AND avg(scoreInfo.score)>=70 -- Gitee From 297996386ad9036d9fa086e257a3377a557cc450 Mon Sep 17 00:00:00 2001 From: zcd435 <2811780189@qq.com> Date: Wed, 31 Mar 2021 10:40:00 +0800 Subject: [PATCH 035/144] sql --- .../SQLQueryZ1.sql" | 68 +++++++++++++++++++ 1 file changed, 68 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\233\276\344\273\216\346\235\234/SQLQueryZ1.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\233\276\344\273\216\346\235\234/SQLQueryZ1.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\233\276\344\273\216\346\235\234/SQLQueryZ1.sql" new file mode 100644 index 0000000..9475cf4 --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\233\276\344\273\216\346\235\234/SQLQueryZ1.sql" @@ -0,0 +1,68 @@ +use master +go +create database Srudents +go +create table stuinfo +( +stuID int primary key identity, +stuName varchar(10), +stuAge int , +StuSex int check(stuSex=1 or stuSex=0), +time date +) +create table courseInfo +( +courseID int primary key identity, +courseName varchar(10), +courseMarks int +) +create table scoreInfo +( +scoreID int primary key identity, +stuID int references stuinfo(stuID), +courseID int references courseinfo(courseID), +score int +) +insert into + stuinfo(stuName,stuAge,StuSex) +values +('Tom',19,1), +('Jack',20,0), +('Rose',21,1), +('Lulu',19,1), +('Lili',21,0), +('abc',20,1) +update stuinfo set time='2007-01-07 01:11:36.590'where stuID=6 +insert into +courseInfo(courseName,courseMarks) +values +('JavaBase',4), +('HTML',2), +('JavaScript',2), +('SqkBase',2) +insert into +scoreInfo(stuID,courseID,score) +values +(1,1,80), +(1,2,85), +(1,4,50), +(2,1,75), +(2,3,45), +(2,4,75), +(3,1,45), +(4,1,95), +(4,2,75), +(4,3,90), +(4,4,45) +select stuID,count(courseID) 所修课程数量,avg(score) 所修课程平均分 from scoreInfo group by stuID +select courseID 课程,count(stuID) 选修课程人数,sum(score) 总分 from scoreInfo group by courseID +select * from stuinfo a where EXISTS (select stuAge,StuSex,count(stuAge),count(StuSex) from stuinfo b where a.stuAge=b.stuAge and a.StuSex=b.StuSex group by stuAge,StuSex having count(stuAge)>1 and count(StuSex)>1) +select * from courseInfo where courseMarks in ( select courseMarks from courseInfo group by courseMarks having count(courseMarks)>1) +select scoreInfo.stuID,stuinfo.stuName, courseID,score from scoreInfo inner join stuinfo on stuinfo.stuID=scoreInfo.stuID +select scoreInfo.stuID,courseInfo.courseID,courseName,courseMarks,score from scoreInfo inner join courseInfo on courseInfo.courseID=scoreInfo.courseID +--9到10题 +select * from stuinfo where stuName like '%a%' +select stuID, avg(score) 平均分,count(courseID) 课程数 from scoreInfo group by stuID having avg(score)>70 and count(courseID)>2 +select * from stuinfo +select * from courseInfo +select * from scoreInfo \ No newline at end of file -- Gitee From 438af9b99468c23865ec3f9b4b49e6d2033bd8d1 Mon Sep 17 00:00:00 2001 From: futurestare <2528134883@qq.com> Date: Wed, 31 Mar 2021 10:42:30 +0800 Subject: [PATCH 036/144] first commit --- .../SQLQuery1.sql" | 71 +++++++++++++++++++ 1 file changed, 71 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\203\241\346\264\245\345\215\216/SQLQuery1.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\203\241\346\264\245\345\215\216/SQLQuery1.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\203\241\346\264\245\345\215\216/SQLQuery1.sql" new file mode 100644 index 0000000..0553bd5 --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\203\241\346\264\245\345\215\216/SQLQuery1.sql" @@ -0,0 +1,71 @@ +use master +go +create database Students +on +( + name='Students', + filename='D:\SQLwork\Students.mdf', + Size=5MB, + maxsize=50MB, + filegrowth=10% + ) + log on +( +name='Students_log', + filename='D:\SQLwork\Students_log.ldf', + Size=5MB, + maxsize=50MB, + filegrowth=10% +) +go +use Students +create table stuInfo +( +stuID int primary key identity(1,1), +stuName nvarchar(10) , +stuAge int , +stuSex nvarchar(2) , +stuTime datetime , +) +create table courseInfo +( +courseID int primary key identity(1,1), +courseName nvarchar(10) not null, +courseMarks int not null, +) +create table scoreInfo +( +scoreID int identity(1,1), +stuID int references stuInfo(stuID), +courseID int references courseInfo(courseID), +score int not null, +) + +insert into stuInfo(stuName,stuAge,stuSex,stuTime) values ('TOM',19,1,null),('Jack',20,0,null),('Rose',21,1,null),('Lulu',19,1,null),('Lili',21,0,null),('abc',20,1,'2007-01-07 01:11:36.590') +insert into courseInfo(courseName,courseMarks) values ('JavaBase',4),('HTML',2),('JavaScript',2),('SqlBase',2) +insert into scoreInfo(stuID ,courseID,score)values(1,1,80),(1,2,85),(1,4,50),(2,1,75),(2,3,45),(2,4,75),(3,1,45),(4,1,95),(4,2,75),(4,3,90),(4,4,45) +select * from stuInfo +select * from courseInfo +select * from scoreInfo +--有如图所示的三张表结构,学生信息表(stuInfo),课程信息表(courseInfo),分数信息表(scoreInfo) +--题目: +--1.查询出每个学生所选修的课程的数量和所选修的课程的考试的平均分 +select F.stuID,stuName, count (courseMarks)课程的数量,avg (score)课程的考试的平均分 from stuInfo F,courseInfo C,scoreInfo O where F.stuID=O.stuID AND C.courseID=O.courseID group by stuName ,F.stuID +--2.查询出每门课程的选修的学生的个数和学生考试的总分 +select C.courseID, count (F.stuID)选修的学生的个数,SUM (score)课程的考试的总分 from stuInfo F,courseInfo C,scoreInfo O where F.stuID=O.stuID AND C.courseID=O.courseID group by C.courseID +--3.查询出性别一样并且年龄一样的学生的信息 +select A.stuID,A.stuName,A.stuSex,B.stuAge FROM stuInfo A inner join stuInfo B on A.stuID<>B.stuID and A.stuSex=B.stuSex and A.stuAge=B.stuAge +--4.查询出学分一样的课程信息 +select distinct B.courseID,B.courseName,B.courseMarks from courseInfo A inner join courseInfo B on A.courseID<>B.courseID and A.courseMarks=B.courseMarks +--5.查询出参加了考试的学生的学号,姓名,课程号和分数 +select F.stuID 学号,stuName 姓名,C.courseID 课程号,score 分数 from stuInfo F,courseInfo C,scoreInfo O where F.stuID=O.stuID AND C.courseID=O.courseID +--6.查询出参加了考试的学生的学号,课程号,课程名,课程学分和分数 +select F.stuID 学号,stuName 姓名,C.courseID 课程号,courseName 课程名,courseMarks 课程学分,score 分数 from stuInfo F,courseInfo C,scoreInfo O where F.stuID=O.stuID AND C.courseID=O.courseID +--7.查询出没有参加考试的学生的学号和姓名 +select S.StuID,StuName from Stuinfo S left join scoreInfo I on S.StuID = I.stuID where score is NULL +--8 .查询出是周六周天来报到的学生 +select * from stuInfo where stuTime='星期六' or stuTime='星期天' +--9.查询出姓名中有字母a的学生的信息 +select * from stuInfo where stuName like '%a%' +--10.查询出选修了2门课程以上的并且考试平均分在70以上的学生的学号和考试平均分以及选修课程的数量 +select S.stuID,avg(score),count(*) from scoreInfo S inner join stuInfo I on I.stuID = S.stuID inner join courseInfo C on C.courseID = S.courseID group by S.stuID having count(*)>2 and avg(score)>70 \ No newline at end of file -- Gitee From 2a630f2641d4fa09efa3d2cb5efa43a40d381cf2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=98=BF=E5=90=89?= <3011074719@qq.com> Date: Wed, 31 Mar 2021 10:48:27 +0800 Subject: [PATCH 037/144] =?UTF-8?q?=E6=96=B0=E5=BB=BA=20=E9=99=88=E8=BF=9B?= =?UTF-8?q?=E5=90=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\351\231\210\350\277\233\345\220\211/.keep" | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\231\210\350\277\233\345\220\211/.keep" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\231\210\350\277\233\345\220\211/.keep" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\231\210\350\277\233\345\220\211/.keep" new file mode 100644 index 0000000..e69de29 -- Gitee From 77ff79b581c53b14ba870dcfd2a4cdb06c0e7d82 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=98=BF=E5=90=89?= <3011074719@qq.com> Date: Wed, 31 Mar 2021 10:48:52 +0800 Subject: [PATCH 038/144] =?UTF-8?q?=E9=99=88=E8=BF=9B=E5=90=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SQLQuery1.sql" | 74 +++++++++++++++++++ 1 file changed, 74 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\231\210\350\277\233\345\220\211/SQLQuery1.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\231\210\350\277\233\345\220\211/SQLQuery1.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\231\210\350\277\233\345\220\211/SQLQuery1.sql" new file mode 100644 index 0000000..ea2f252 --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\231\210\350\277\233\345\220\211/SQLQuery1.sql" @@ -0,0 +1,74 @@ + +create database aji +go +use aji +go + +create table stuInfo +( + stuID int primary key identity(1,1), + stuName nvarchar(10) not null, + stuAge char(3) not null, + stusex char(2) not null, + time date +) +create table courseInfo +( + courseID int primary key identity(1,1), + courseName nvarchar(10) not null, + courseMarks int not null +) +create table scoreInfo +( + scoreID int primary key identity(1,1), + stuID int references stuInfo(stuID) not null, + courseID int references courseInfo(courseID) not null, + score int , +) +go + +insert into stuInfo values('Tom',19,1,null),('Jack',20,0,null), +('Rose',21,1,null),('Lulu',19,1,null),('Lili',21,0,null),('abc',20,1,'2007-01-07 01:11:36.590') + +insert into courseInfo values('JavaBase',4),('HTML',2),('JavaScript',2),('SqlBase',2) + +insert into scoreInfo values(1,1,80),(1,2,85),(1,4,50),(2,1,75),(2,3,45), +(2,4,75),(3,1,45),(4,1,95),(4,2,75),(4,3,90),(4,4,45) +go +--有如图所示的三张表结构,学生信息表(stuInfo),课程信息表(courseInfo),分数信息表(scoreInfo) +select * from stuInfo +select * from courseInfo +select * from scoreInfo +--题目: +--1.查询出每个学生所选修的课程的数量和所选修的课程的考试的平均分 +select s.stuID,stuName, count(courseName) 课程数量 ,avg(score) 平均分数 from scoreInfo s +inner join stuInfo stu on s.stuID = stu.stuID +inner join courseInfo c on s.courseID=c.courseID group by s.stuID ,stuName +--2.查询出 每门课程的选修的学生的个数 和 学生考试的总分 +select c.courseID,courseName,count(s.stuID) 学生的个数,sum(score) 总分 from scoreInfo s +inner join stuInfo stu on s.stuID=stu.stuID +inner join courseInfo c on s.courseID=c.courseID group by c.courseID,courseName +--3.查询出性别一样并且年龄一样的学生的信息 +select * from stuInfo s1 join stuInfo s2 on s1.stuName<>s2.stuName and s1.stuAge=s2.stuAge and s1.stusex=s2.stusex +--另一种做法select * from stuInfo t where (select COUNT(*) from stuInfo where stuAge=t.stuAge and stuSex=t.stuSex)>1 +--4.查询出学分一样的课程信息 +select * from courseInfo c1 join courseInfo c2 on c1.courseID!=c2.courseID and c1.courseMarks=c2.courseMarks +--5.查询出参加了考试的 学生的学号,姓名,课程号 和 分数 +select s.stuID,stuName,c.courseID,score from scoreInfo s +inner join stuInfo stu on s.stuID=stu.stuID +inner join courseInfo c on s.courseID=c.courseID +--6.查询出参加了考试的学生的学号,课程号,课程名,课程学分和分数 +select s.stuID,stuName,c.courseID,courseMarks,score from scoreInfo s +inner join stuInfo stu on s.stuID=stu.stuID +inner join courseInfo c on s.courseID=c.courseID +--7.查询出没有参加考试的学生的学号和姓名 + select * from stuInfo where stuID not in (select stuID from scoreInfo) + --另一种做法select * from stuInfo left join scoreInfo on stuInfo.stuID = scoreInfo.stuID where score is null +--8.查询出是周六周天来报到的学生 + +--9.查询出姓名中有字母a的学生的信息 +select * from stuInfo where stuName like '%a%' +--10.查询出选修了2门课程以上的并且考试平均分在70以上的 学生的学号 和 考试平均分 以及 选修课程的数量 +select s.stuID,stuName,avg(score)平均分,count(c.courseID)课程数 from scoreInfo s +inner join stuInfo stu on s.stuID=stu.stuID +inner join courseInfo c on s.courseID=c.courseID group by s.stuID,stuName having avg(score)>70 -- Gitee From e5d2414f08d70f1c938c3b80c319d4c5894b1d76 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=A2=81=E9=93=B6=E8=8A=9D?= <2816000163@qq.com> Date: Wed, 31 Mar 2021 10:59:33 +0800 Subject: [PATCH 039/144] =?UTF-8?q?=E6=96=B0=E5=BB=BA=20=E6=A2=81=E9=93=B6?= =?UTF-8?q?=E8=8A=9D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\346\242\201\351\223\266\350\212\235/.keep" | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\242\201\351\223\266\350\212\235/.keep" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\242\201\351\223\266\350\212\235/.keep" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\242\201\351\223\266\350\212\235/.keep" new file mode 100644 index 0000000..e69de29 -- Gitee From 87e0d28e8cfb60fdc6f042bb18b6273c150dd865 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=A2=81=E9=93=B6=E8=8A=9D?= <2816000163@qq.com> Date: Wed, 31 Mar 2021 11:00:08 +0800 Subject: [PATCH 040/144] =?UTF-8?q?=E6=A2=81=E9=93=B6=E8=8A=9D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SQLQuery1.sql" | 112 ++++++++++++++++++ 1 file changed, 112 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\242\201\351\223\266\350\212\235/\346\242\201\351\223\266\350\212\235/SQLQuery1.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\242\201\351\223\266\350\212\235/\346\242\201\351\223\266\350\212\235/SQLQuery1.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\242\201\351\223\266\350\212\235/\346\242\201\351\223\266\350\212\235/SQLQuery1.sql" new file mode 100644 index 0000000..8a8ddc0 --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\242\201\351\223\266\350\212\235/\346\242\201\351\223\266\350\212\235/SQLQuery1.sql" @@ -0,0 +1,112 @@ +use master +go + +create database Student +on +( +name='Student', + filename='D:\text\Student.mdf', + size=5MB, + maxsize=50MB, + filegrowth=10% +) +log on +( +name='Students_log', + filename='D:\text\Student_log.mdf', + size=5MB, + maxsize=50MB, + filegrowth=10% +) +go + +use Student +go + +create table stuInfo +( +stuID int primary key identity, +stuName varchar(10), +stuAge varchar(5), +stuSex varchar(1), +[time] datetime +) +go + +create table courseInfo +( +courseID int primary key identity, +courseName varchar(10), +courseMarks int +) +go + +create table scoreInfo +( +scoreID int primary key identity, +stuID int references stuInfo(stuID), +courseID int references courseInfo(courseID), +score int +) +go + +insert into stuInfo values('Tom',19,1,null),('Jack',20,0,null), +('Rose',21,1,null),('Lulu',19,1,null),('Lili',21,0,null),('abc',20,1,'2007-01-07 01:11:36.590') +go + +insert into courseInfo values('JavaBase',4),('HTML',2),('JavaScript',2),('SqlBase',2) +go + +insert into scoreInfo values(1,1,80),(1,2,85),(1,4,50),(2,1,75),(2,3,45), +(2,4,75),(3,1,45),(4,1,95),(4,2,75),(4,3,90),(4,4,45) +go + +select * from stuInfo +select * from courseInfo +select * from scoreInfo +go + +--1.查询出每个学生所选修的课程的数量和所选修的课程的考试的平均分 +select stuName 学生姓名,COUNT(scoreInfo.stuID) 所选修的课程的数量,AVG(score) 所选修的课程的考试的平均分 + from stuInfo left join scoreInfo on stuInfo.stuID = scoreInfo.stuID GROUP BY stuName + go + +--2.查询出每门课程的选修的学生的个数和学生考试的总分 +select courseName 课程名称,COUNT(scoreInfo.courseID) 学生个数,SUM(score) 学生考试的总分 from courseInfo inner join scoreInfo on courseInfo.courseID = scoreInfo.courseID GROUP BY scoreInfo.courseID,courseName + go + + --3.查询出性别一样并且年龄一样的学生的信息 + --方法一 + select * from stuInfo t where (select COUNT(*) from stuInfo where stuAge=t.stuAge and stuSex=t.stuSex)>1 + --方法二 + select * from stuInfo s1 join stuInfo s2 on s1.stuName<>s2.stuName and s1.stuAge=s2.stuAge and s1.stusex=s2.stusex + go + +--4.查询出学分一样的课程信息 + select * from courseInfo c where (select COUNT(*) from courseInfo where courseMarks=c.courseMarks)>1 + go + +--5.查询出参加了考试的学生的学号,姓名,课程号和分数 +select stuInfo.stuID 学号,stuName 姓名,courseID 课程号,score 分数 from stuInfo inner join scoreInfo on stuInfo.stuID = scoreInfo.stuID +go + +--6.查询出参加了考试的学生的学号,课程号,课程名,课程学分和分数 +select stuInfo.stuID 学号,stuName 姓名,scoreInfo.courseID 课程号,courseMarks 课程学分,score 分数 from scoreInfo inner join stuInfo on scoreInfo.stuID = stuInfo.stuID inner join courseInfo on scoreInfo.courseID = courseInfo.courseID +go + +--7.查询出没有参加考试的学生的学号和姓名 +--方法一 +select stuInfo.stuID 学号,stuName 姓名 from stuInfo left join scoreInfo on stuInfo.stuID = scoreInfo.stuID where score is null +--方法二 +select * from stuInfo where stuID not in (select stuID from scoreInfo) +go + +--8.查询出是周六周天来报到的学生 + + +--9.查询出姓名中有字母a的学生的信息 +select * from stuInfo where stuName like '%a%' +go + +--10.查询出选修了2门课程以上的并且考试平均分在70以上的学生的 学号 和 考试平均分以及 选修课程的数量 +select stuInfo.stuID 学号,AVG(score) 考试平均分,COUNT(courseID) 选修课程的数量 from stuInfo join scoreInfo on stuInfo.stuID = scoreInfo.stuID group by stuInfo.stuID having AVG(score)>70 and COUNT(courseID)>2 -- Gitee From f9d730749d8f2baf045aebc75889261562bf7da1 Mon Sep 17 00:00:00 2001 From: cyxer1c <1052035978@qq.com> Date: Wed, 31 Mar 2021 11:07:35 +0800 Subject: [PATCH 041/144] =?UTF-8?q?=E9=99=88=E5=AE=87=E7=BF=94?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SQLQuery1.sql" | 74 +++++++++++++++++++ 1 file changed, 74 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\231\210\345\256\207\347\277\224/SQLQuery1.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\231\210\345\256\207\347\277\224/SQLQuery1.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\231\210\345\256\207\347\277\224/SQLQuery1.sql" new file mode 100644 index 0000000..ea2f252 --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\231\210\345\256\207\347\277\224/SQLQuery1.sql" @@ -0,0 +1,74 @@ + +create database aji +go +use aji +go + +create table stuInfo +( + stuID int primary key identity(1,1), + stuName nvarchar(10) not null, + stuAge char(3) not null, + stusex char(2) not null, + time date +) +create table courseInfo +( + courseID int primary key identity(1,1), + courseName nvarchar(10) not null, + courseMarks int not null +) +create table scoreInfo +( + scoreID int primary key identity(1,1), + stuID int references stuInfo(stuID) not null, + courseID int references courseInfo(courseID) not null, + score int , +) +go + +insert into stuInfo values('Tom',19,1,null),('Jack',20,0,null), +('Rose',21,1,null),('Lulu',19,1,null),('Lili',21,0,null),('abc',20,1,'2007-01-07 01:11:36.590') + +insert into courseInfo values('JavaBase',4),('HTML',2),('JavaScript',2),('SqlBase',2) + +insert into scoreInfo values(1,1,80),(1,2,85),(1,4,50),(2,1,75),(2,3,45), +(2,4,75),(3,1,45),(4,1,95),(4,2,75),(4,3,90),(4,4,45) +go +--有如图所示的三张表结构,学生信息表(stuInfo),课程信息表(courseInfo),分数信息表(scoreInfo) +select * from stuInfo +select * from courseInfo +select * from scoreInfo +--题目: +--1.查询出每个学生所选修的课程的数量和所选修的课程的考试的平均分 +select s.stuID,stuName, count(courseName) 课程数量 ,avg(score) 平均分数 from scoreInfo s +inner join stuInfo stu on s.stuID = stu.stuID +inner join courseInfo c on s.courseID=c.courseID group by s.stuID ,stuName +--2.查询出 每门课程的选修的学生的个数 和 学生考试的总分 +select c.courseID,courseName,count(s.stuID) 学生的个数,sum(score) 总分 from scoreInfo s +inner join stuInfo stu on s.stuID=stu.stuID +inner join courseInfo c on s.courseID=c.courseID group by c.courseID,courseName +--3.查询出性别一样并且年龄一样的学生的信息 +select * from stuInfo s1 join stuInfo s2 on s1.stuName<>s2.stuName and s1.stuAge=s2.stuAge and s1.stusex=s2.stusex +--另一种做法select * from stuInfo t where (select COUNT(*) from stuInfo where stuAge=t.stuAge and stuSex=t.stuSex)>1 +--4.查询出学分一样的课程信息 +select * from courseInfo c1 join courseInfo c2 on c1.courseID!=c2.courseID and c1.courseMarks=c2.courseMarks +--5.查询出参加了考试的 学生的学号,姓名,课程号 和 分数 +select s.stuID,stuName,c.courseID,score from scoreInfo s +inner join stuInfo stu on s.stuID=stu.stuID +inner join courseInfo c on s.courseID=c.courseID +--6.查询出参加了考试的学生的学号,课程号,课程名,课程学分和分数 +select s.stuID,stuName,c.courseID,courseMarks,score from scoreInfo s +inner join stuInfo stu on s.stuID=stu.stuID +inner join courseInfo c on s.courseID=c.courseID +--7.查询出没有参加考试的学生的学号和姓名 + select * from stuInfo where stuID not in (select stuID from scoreInfo) + --另一种做法select * from stuInfo left join scoreInfo on stuInfo.stuID = scoreInfo.stuID where score is null +--8.查询出是周六周天来报到的学生 + +--9.查询出姓名中有字母a的学生的信息 +select * from stuInfo where stuName like '%a%' +--10.查询出选修了2门课程以上的并且考试平均分在70以上的 学生的学号 和 考试平均分 以及 选修课程的数量 +select s.stuID,stuName,avg(score)平均分,count(c.courseID)课程数 from scoreInfo s +inner join stuInfo stu on s.stuID=stu.stuID +inner join courseInfo c on s.courseID=c.courseID group by s.stuID,stuName having avg(score)>70 -- Gitee From e0f736dbfa9699a2c582cb3274f3efc970273ebc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E8=8B=B1=E7=BE=A4?= <3374490732@qq.com> Date: Wed, 31 Mar 2021 11:07:58 +0800 Subject: [PATCH 042/144] =?UTF-8?q?=E6=96=B0=E5=BB=BA=20=E6=9D=8E=E8=8B=B1?= =?UTF-8?q?=E7=BE=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\346\235\216\350\213\261\347\276\244/.keep" | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\235\216\350\213\261\347\276\244/.keep" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\235\216\350\213\261\347\276\244/.keep" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\235\216\350\213\261\347\276\244/.keep" new file mode 100644 index 0000000..e69de29 -- Gitee From 04836df92d2e90dab86904b626b2e90dcd77dda5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E8=8B=B1=E7=BE=A4?= <3374490732@qq.com> Date: Wed, 31 Mar 2021 11:08:25 +0800 Subject: [PATCH 043/144] =?UTF-8?q?=E6=9D=8E=E8=8B=B1=E7=BE=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\344\275\234\344\270\23211.txt" | 74 +++++++++++++++++++ 1 file changed, 74 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\235\216\350\213\261\347\276\244/\344\275\234\344\270\23211.txt" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\235\216\350\213\261\347\276\244/\344\275\234\344\270\23211.txt" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\235\216\350\213\261\347\276\244/\344\275\234\344\270\23211.txt" new file mode 100644 index 0000000..c4e035b --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\235\216\350\213\261\347\276\244/\344\275\234\344\270\23211.txt" @@ -0,0 +1,74 @@ + +create database aji +go +use aji +go + +create table stuInfo +( + stuID int primary key identity(1,1), + stuName nvarchar(10) not null, + stuAge char(3) not null, + stusex char(2) not null, + time date +) +create table courseInfo +( + courseID int primary key identity(1,1), + courseName nvarchar(10) not null, + courseMarks int not null +) +create table scoreInfo +( + scoreID int primary key identity(1,1), + stuID int references stuInfo(stuID) not null, + courseID int references courseInfo(courseID) not null, + score int , +) +go + +insert into stuInfo values('Tom',19,1,null),('Jack',20,0,null), +('Rose',21,1,null),('Lulu',19,1,null),('Lili',21,0,null),('abc',20,1,'2007-01-07 01:11:36.590') + +insert into courseInfo values('JavaBase',4),('HTML',2),('JavaScript',2),('SqlBase',2) + +insert into scoreInfo values(1,1,80),(1,2,85),(1,4,50),(2,1,75),(2,3,45), +(2,4,75),(3,1,45),(4,1,95),(4,2,75),(4,3,90),(4,4,45) +go +--鏈夊鍥炬墍绀虹殑涓夊紶琛ㄧ粨鏋勶紝瀛︾敓淇℃伅琛紙stuInfo锛夛紝璇剧▼淇℃伅琛紙courseInfo锛,鍒嗘暟淇℃伅琛紙scoreInfo锛 +select * from stuInfo +select * from courseInfo +select * from scoreInfo +--棰樼洰锛 +--1.鏌ヨ鍑烘瘡涓鐢熸墍閫変慨鐨勮绋嬬殑鏁伴噺鍜屾墍閫変慨鐨勮绋嬬殑鑰冭瘯鐨勫钩鍧囧垎 +select s.stuID,stuName, count(courseName) 璇剧▼鏁伴噺 ,avg(score) 骞冲潎鍒嗘暟 from scoreInfo s +inner join stuInfo stu on s.stuID = stu.stuID +inner join courseInfo c on s.courseID=c.courseID group by s.stuID ,stuName +--2.鏌ヨ鍑 姣忛棬璇剧▼鐨勯変慨鐨勫鐢熺殑涓暟 鍜 瀛︾敓鑰冭瘯鐨勬诲垎 +select c.courseID,courseName,count(s.stuID) 瀛︾敓鐨勪釜鏁,sum(score) 鎬诲垎 from scoreInfo s +inner join stuInfo stu on s.stuID=stu.stuID +inner join courseInfo c on s.courseID=c.courseID group by c.courseID,courseName +--3.鏌ヨ鍑烘у埆涓鏍峰苟涓斿勾榫勪竴鏍风殑瀛︾敓鐨勪俊鎭 +select * from stuInfo s1 join stuInfo s2 on s1.stuName<>s2.stuName and s1.stuAge=s2.stuAge and s1.stusex=s2.stusex +--鍙︿竴绉嶅仛娉晄elect * from stuInfo t where (select COUNT(*) from stuInfo where stuAge=t.stuAge and stuSex=t.stuSex)>1 +--4.鏌ヨ鍑哄鍒嗕竴鏍风殑璇剧▼淇℃伅 +select * from courseInfo c1 join courseInfo c2 on c1.courseID!=c2.courseID and c1.courseMarks=c2.courseMarks +--5.鏌ヨ鍑哄弬鍔犱簡鑰冭瘯鐨 瀛︾敓鐨勫鍙凤紝濮撳悕锛岃绋嬪彿 鍜 鍒嗘暟 +select s.stuID,stuName,c.courseID,score from scoreInfo s +inner join stuInfo stu on s.stuID=stu.stuID +inner join courseInfo c on s.courseID=c.courseID +--6.鏌ヨ鍑哄弬鍔犱簡鑰冭瘯鐨勫鐢熺殑瀛﹀彿锛岃绋嬪彿锛岃绋嬪悕锛岃绋嬪鍒嗗拰鍒嗘暟 +select s.stuID,stuName,c.courseID,courseMarks,score from scoreInfo s +inner join stuInfo stu on s.stuID=stu.stuID +inner join courseInfo c on s.courseID=c.courseID +--7.鏌ヨ鍑烘病鏈夊弬鍔犺冭瘯鐨勫鐢熺殑瀛﹀彿鍜屽鍚 + select * from stuInfo where stuID not in (select stuID from scoreInfo) + --鍙︿竴绉嶅仛娉晄elect * from stuInfo left join scoreInfo on stuInfo.stuID = scoreInfo.stuID where score is null +--8.鏌ヨ鍑烘槸鍛ㄥ叚鍛ㄥぉ鏉ユ姤鍒扮殑瀛︾敓 + +--9.鏌ヨ鍑哄鍚嶄腑鏈夊瓧姣峚鐨勫鐢熺殑淇℃伅 +select * from stuInfo where stuName like '%a%' +--10.鏌ヨ鍑洪変慨浜2闂ㄨ绋嬩互涓婄殑骞朵笖鑰冭瘯骞冲潎鍒嗗湪70浠ヤ笂鐨 瀛︾敓鐨勫鍙 鍜 鑰冭瘯骞冲潎鍒 浠ュ強 閫変慨璇剧▼鐨勬暟閲 +select s.stuID,stuName,avg(score)骞冲潎鍒,count(c.courseID)璇剧▼鏁 from scoreInfo s +inner join stuInfo stu on s.stuID=stu.stuID +inner join courseInfo c on s.courseID=c.courseID group by s.stuID,stuName having avg(score)>70 \ No newline at end of file -- Gitee From bd68ab209e44ca3d7113157f8286708f0544cef2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BB=84=E5=A9=B7=E8=8A=B3?= <1773618245@qq.com> Date: Wed, 31 Mar 2021 11:30:17 +0800 Subject: [PATCH 044/144] =?UTF-8?q?=E6=96=B0=E5=BB=BA=20=E9=BB=84=E5=A9=B7?= =?UTF-8?q?=E8=8A=B3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\351\273\204\345\251\267\350\212\263/.keep" | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\273\204\345\251\267\350\212\263/.keep" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\273\204\345\251\267\350\212\263/.keep" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\273\204\345\251\267\350\212\263/.keep" new file mode 100644 index 0000000..e69de29 -- Gitee From d6186e475e58ecf976111017eff9418327cee68d Mon Sep 17 00:00:00 2001 From: John Doe <2403666581@qq.com> Date: Wed, 31 Mar 2021 11:31:17 +0800 Subject: [PATCH 045/144] ysr --- ...\346\254\241\344\275\234\344\270\2321.sql" | 131 ++++++++++++++++++ 1 file changed, 131 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\235\250\344\270\226\347\221\236/\347\254\254\345\215\201\344\270\200\346\254\241\344\275\234\344\270\2321.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\235\250\344\270\226\347\221\236/\347\254\254\345\215\201\344\270\200\346\254\241\344\275\234\344\270\2321.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\235\250\344\270\226\347\221\236/\347\254\254\345\215\201\344\270\200\346\254\241\344\275\234\344\270\2321.sql" new file mode 100644 index 0000000..d591c72 --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\235\250\344\270\226\347\221\236/\347\254\254\345\215\201\344\270\200\346\254\241\344\275\234\344\270\2321.sql" @@ -0,0 +1,131 @@ +use master +go + +create database Student +on +( + name=Student, + filename='E:\数据库文件\Student.mdf', + size=5MB, + maxsize=10MB, + filegrowth=10% +) +log on +( + name=Student_log, + filename='E:\数据库文件\Student_log.ldf', + size=5MB, + maxsize=10MB, + filegrowth=10% +) +go + +use Student +go + +create table stuInfo +( + stuID int identity(1,1), + stuName varchar(30), + stuAge varchar(5), + stuSex varchar(6), + time datetime +) +go + +insert into stuInfo(stuName,stuAge,stuSex) + select 'Tom',19,1 union + select 'Jack',20,0 union + select 'Rose',21,1 union + select 'Lulu',19,1 union + select 'Lili',21,0 union + select 'abc',20,1 +go + +update stuInfo set time='2007-01-07 01:11:36.590' where stuID=6 +go + +create table courseInfo +( + courseID int identity(1,1), + courseName varchar(10), + courseMarks varchar(6) +) +go + +insert into courseInfo(courseName,courseMarks)values('JavaBase',4),('HTML',2),('JavaScript',2),('SqlBase',2) +go + +create table scoreInfo +( + scoreID int identity(1,1), + stuID int, + courseID int, + score int, +) +go + +insert into scoreInfo(stuID,courseID,score) +select 1,1,80 union +select 1,2,85 union +select 1,4,50 union +select 2,1,75 union +select 2,3,45 union +select 2,4,75 union +select 3,1,45 union +select 4,1,95 union +select 4,2,75 union +select 4,3,90 union +select 4,4,45 +go + +--题目: +--1.查询出每个学生 所选修的课程的数量 和所选修的课程的考试的平均分 + +select stuName 学生姓名,count(s.stuID)课程数量,AVG(score)考试平均分 from scoreInfo s +inner join stuInfo i on i.stuID=s.stuID +group by s.stuID,stuName + +--2.查询出每门课程的选修的学生的个数和学生考试的总分 + +select C.courseName 课程名称,count(S.courseID) 学生个数,sum(S.score) 考试总分 from courseInfo C +inner join scoreInfo S on C.courseID=S.courseID +group by C.courseID,courseName + +--3.查询出性别一样并且年龄一样的学生的信息 +select * from stuInfo A +left join stuInfo B on A.stuAge=B.stuAge and A.stuSex=B.stuSex and A.stuID!=B.stuID + + +--4.查询出学分一样的课程信息 +select * from courseInfo A +left join courseInfo B on B.courseMarks=A.courseMarks where A.courseID!=B.courseID + + +--5.查询出参加了考试的学生的学号,姓名,课程号和分数 +select A.stuID 学号,stuName 姓名,courseID 课程号,score 分数 from stuInfo A +right join scoreInfo B on A.stuID=B.stuID + +--6.查询出参加了考试的学生的学号,课程号,课程名,课程学分和分数 + +select A.stuID 学生学号,C.courseID 课程号,C.courseName,C.courseMarks,score from stuInfo A +right join scoreInfo B on A.stuID=B.stuID +left join courseInfo C on C.courseID=B.courseID + +--7.查询出没有参加考试的学生的学号和姓名 + +select B.stuID 学号,B.stuName 姓名 from scoreInfo A +right join stuInfo B on A.stuID=B.stuID where score is NULL + +--8.查询出是周六周天来报到的学生 + + +--9.查询出姓名中有字母a的学生的信息 + +select * from stuInfo where stuName like '%a%' + +--10.查询出选修了2门课程以上的并且考试平均分在70以上的学生的 学号 和 考试平均分以及 选修课程的数量 + +select stuID 学生学号,AVG(score)考试平均分,COUNT(stuID)课程数量 from scoreInfo +group by stuID +having COUNT(stuID)>=2 and AVG(score)>70 \ No newline at end of file -- Gitee From 34bd5c0bc370bcac9f37f0958e98d8c9cbbe95ab Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BB=84=E5=A9=B7=E8=8A=B3?= <1773618245@qq.com> Date: Wed, 31 Mar 2021 11:35:19 +0800 Subject: [PATCH 046/144] =?UTF-8?q?=E9=BB=84=E5=A9=B7=E8=8A=B3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...6\234\254\346\226\207\346\241\243 (2).txt" | 91 +++++++++++++++++++ 1 file changed, 91 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\273\204\345\251\267\350\212\263/\346\226\260\345\273\272\346\226\207\346\234\254\346\226\207\346\241\243 (2).txt" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\273\204\345\251\267\350\212\263/\346\226\260\345\273\272\346\226\207\346\234\254\346\226\207\346\241\243 (2).txt" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\273\204\345\251\267\350\212\263/\346\226\260\345\273\272\346\226\207\346\234\254\346\226\207\346\241\243 (2).txt" new file mode 100644 index 0000000..0544818 --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\273\204\345\251\267\350\212\263/\346\226\260\345\273\272\346\226\207\346\234\254\346\226\207\346\241\243 (2).txt" @@ -0,0 +1,91 @@ +create database student +go + +use student +go +create table Stuinfo +( + StuID int primary key identity(1,1), + StuName nvarchar(10), + StuAge int, + StuSex int, + STime datetime default(cast('2007-01-07 01:11:36.590' as datetime)) +) + +insert into Stuinfo values ('Tom',19,1,null), +('Jack',20,0,null), +('Rose',21,1,null), +('Lulu',19,1,null), +('Lili',21,0,null), +('abc',20,1 ,default) + +select * from Stuinfo + +create table CourseInfo +( + CourseID int primary key identity(1,1), + CourseName nvarchar(10), + CourseMarks int +) + +insert into CourseInfo values('JavaBase',4), +('HTML',2), +('JavaScript',2), +('SqlBase',2) + +select * from CourseInfo + +create table ScoreInfo +( + ScoreID int primary key identity(1,1), + StuID int references Stuinfo(StuID), + CourseID int references CourseInfo(CourseID), + Score int +) + +insert into ScoreInfo values (1,1,80), +(1,2,85),(1,4,50),(2,1,75),(2,3,45),(2,4,75), +(3,1,45),(4,1,95),(4,2,75),(4,3,90),(4,4,45) + +select * from ScoreInfo + +select * from Stuinfo +select * from CourseInfo +select * from ScoreInfo + +--鏈夊鍥炬墍绀虹殑涓夊紶琛ㄧ粨鏋勶紝瀛︾敓淇℃伅琛紙stuInfo锛夛紝璇剧▼淇℃伅琛紙courseInfo锛,鍒嗘暟淇℃伅琛紙scoreInfo锛 + +--棰樼洰锛 +--1.鏌ヨ鍑烘瘡涓鐢 鎵閫変慨鐨勮绋嬬殑鏁伴噺 鍜屾墍閫変慨鐨勮绋嬬殑鑰冭瘯鐨勫钩鍧囧垎 +select st.StuID 瀛︾敓鍙,count(co.CourseID) 鎵閫夎绋嬫暟閲,AVG(Score) 骞冲潎鍒 from Stuinfo st +inner join CourseInfo co on st.StuID=co.CourseID +inner join ScoreInfo sc on st.StuID=sc.CourseID group by st.StuID + +--2.鏌ヨ鍑烘瘡闂ㄨ绋嬬殑閫変慨鐨勫鐢熺殑涓暟鍜屽鐢熻冭瘯鐨勬诲垎 +select st.StuID,count(co.CourseID), sum(Score) from Stuinfo st +inner join CourseInfo co on st.StuID=co.CourseID +inner join ScoreInfo sc on st.StuID=sc.CourseID group by st.StuID +--3.鏌ヨ鍑烘у埆涓鏍峰苟涓斿勾榫勪竴鏍风殑瀛︾敓鐨勪俊鎭 +select * from stuInfo s1 join stuInfo s2 on s1.stuName锛=s2.stuName and s1.stuAge=s2.stuAge and s1.stusex=s2.stusex +--鍙︿竴绉嶅仛娉晄elect * from stuInfo t where (select COUNT(*) from stuInfo where stuAge=t.stuAge and stuSex=t.stuSex)>1 +--4.鏌ヨ鍑哄鍒嗕竴鏍风殑璇剧▼淇℃伅 +select * from courseInfo c1 join courseInfo c2 on c1.courseID!=c2.courseID and c1.courseMarks=c2.courseMarks +--5.鏌ヨ鍑哄弬鍔犱簡鑰冭瘯鐨 瀛︾敓鐨勫鍙凤紝濮撳悕锛岃绋嬪彿 鍜 鍒嗘暟 +select s.stuID,stuName,c.courseID,score from scoreInfo s +inner join stuInfo stu on s.stuID=stu.stuID +inner join courseInfo c on s.courseID=c.courseID +--6.鏌ヨ鍑哄弬鍔犱簡鑰冭瘯鐨勫鐢熺殑瀛﹀彿锛岃绋嬪彿锛岃绋嬪悕锛岃绋嬪鍒嗗拰鍒嗘暟 +select s.stuID,stuName,c.courseID,courseMarks,score from scoreInfo s +inner join stuInfo stu on s.stuID=stu.stuID +inner join courseInfo c on s.courseID=c.courseID +--7.鏌ヨ鍑烘病鏈夊弬鍔犺冭瘯鐨勫鐢熺殑瀛﹀彿鍜屽鍚 + select * from stuInfo where stuID not in (select stuID from scoreInfo) + --鍙︿竴绉嶅仛娉晄elect * from stuInfo left join scoreInfo on stuInfo.stuID = scoreInfo.stuID where score is null +--8.鏌ヨ鍑烘槸鍛ㄥ叚鍛ㄥぉ鏉ユ姤鍒扮殑瀛︾敓 + +--9.鏌ヨ鍑哄鍚嶄腑鏈夊瓧姣峚鐨勫鐢熺殑淇℃伅 +select * from stuInfo where stuName like '%a%' +--10.鏌ヨ鍑洪変慨浜2闂ㄨ绋嬩互涓婄殑骞朵笖鑰冭瘯骞冲潎鍒嗗湪70浠ヤ笂鐨 瀛︾敓鐨勫鍙 鍜 鑰冭瘯骞冲潎鍒 浠ュ強 閫変慨璇剧▼鐨勬暟閲 +select s.stuID,stuName,avg(score)骞冲潎鍒,count(c.courseID)璇剧▼鏁 from scoreInfo s +inner join stuInfo stu on s.stuID=stu.stuID +inner join courseInfo c on s.courseID=c.courseID group by s.stuID,stuName having avg(score)>70 -- Gitee From f38cd567973c1360bf671268760da2d6b780607b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=80=9Cwx=5Fb2f8452a23=E2=80=9D?= <2689023677@qq.com> Date: Wed, 31 Mar 2021 11:37:34 +0800 Subject: [PATCH 047/144] 1 --- .../SQLQuery1.sql" | 84 +++++++++++++++++++ 1 file changed, 84 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\246\203\347\245\232\345\233\275/SQLQuery1.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\246\203\347\245\232\345\233\275/SQLQuery1.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\246\203\347\245\232\345\233\275/SQLQuery1.sql" new file mode 100644 index 0000000..4ae12c2 --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\246\203\347\245\232\345\233\275/SQLQuery1.sql" @@ -0,0 +1,84 @@ +use master +go +create database class +on +( +name='class', +filename='D:\class.mdf', +size=5, +maxsize=50, +filegrowth=10% +) +log on +( +name='class_log', +filename='D:\class_log.ldf', +size=5, +maxsize=50, +filegrowth=10% +) +go + +use class +go +create table stuInfo--学生信息表 +( +stuid int primary key identity ,--学生编号 +stuname varchar(20) not null,--学生姓名 +stuage int not null,--学生年龄 +stusex char(2) not null,--学生性别 +time datetime--时间 +) +create table courseInfo--课程信息表 +( +courseid int primary key identity,--课程编号 +coursename varchar(20) not null,--课程名称 +coursemarks int not null--课程学分 +) +create table scoreInfo--分数信息表 +( +scoreid int primary key identity,--分数编号 +stuid int references stuInfo(stuid),--学生课程 +courseid int references courseInfo(courseid),--课程编号 +score int not null--课程分数 +) +go +insert into stuInfo(stuname,stuage,stusex) values +('Tom','19','1'), +('Jack','20','0'), +('Rose','21','1'), +('Lulu','19','1'), +('Lili','21','0'), +('abc','20','1') +update stuInfo set time='2007-01-07 01:11:36.590' where stuid=6 +insert into courseInfo(coursename,coursemarks) values +('JavaBase','4'), +('HTML','2'), +('JavaScript','2'), +('SQLBase','2') +insert into scoreInfo(stuid,courseid,score) values +('1','1',80),('1','2',85),('1','4',50),('2','1',75),('2','3',45),('2','4',75), +('3','1',45),('4','1',95),('4','2',75),('4','3',90),('4','4',45) +select * from stuInfo +select * from courseInfo +select * from scoreInfo +--1.查询出 每个学生 所选修的课程的数量 和所选修的课程的考试的平均分 +select stuname,COUNT(*),avg(score) from stuInfo A inner join scoreInfo B on A.stuid=B.stuid group by stuname +--2.查询出 每门课程的选修的学生的个数和学生考试的总分 +select coursename,COUNT(*),sum(score) from scoreInfo A inner join courseInfo B on A.courseid=B.courseid group by coursename +--3.查询出性别一样并且年龄一样的学生的信息 +select * from stuInfo A inner join stuInfo B on (A.stuid<>B.stuid)and(A.stusex=B.stusex)and(A.stuage=B.stuage) +--4.查询出学分一样的课程信息 +select * from courseInfo A inner join courseInfo B on (A.courseid<>B.courseid)and(A.coursemarks=B.coursemarks) +--5.查询出参加了考试的学生的学号,姓名,课程号和分数 +select a.stuid,stuname,courseid,score from stuInfo a inner join scoreInfo b on a.stuid=b.stuid +--6.查询出参加了考试的学生的学号,课程号,课程名,课程学分和分数 +select stuid,a.courseid,coursename,coursemarks,score from scoreInfo a inner join courseInfo b on a.courseid=b.courseid +--7.查询出没有参加考试的学生的学号和姓名 +select a.stuid,stuname from stuInfo a left join scoreInfo b on a.stuid=b.stuid where b.scoreid is null +--8.查询出是周六周天来报到的学生 +select * from stuInfo where datename(DW,time)='星期六' or datename(DW,time)='星期天' +--9.查询出姓名中有字母a的学生的信息 +select * from stuInfo where stuname like '%a%' +--10.查询出选修了2门课程以上的并且考试平均分在70以上的学生的学号和考试平均分以及选修课程的数量 +select stuid,avg(score),count(*) from scoreInfo group by stuid having count(*)>2 and round(avg(cast(score as float)),1)>70 -- Gitee From d32088fe05f83385549cc555d0f94d90dfd6b7ac Mon Sep 17 00:00:00 2001 From: cdy9946 Date: Wed, 31 Mar 2021 11:51:38 +0800 Subject: [PATCH 048/144] fs --- .../SQLQuery1.sql" | 109 ++++++++++++++++++ 1 file changed, 109 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\277\201\346\231\266\350\276\211/SQLQuery1.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\277\201\346\231\266\350\276\211/SQLQuery1.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\277\201\346\231\266\350\276\211/SQLQuery1.sql" new file mode 100644 index 0000000..24319cd --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\277\201\346\231\266\350\276\211/SQLQuery1.sql" @@ -0,0 +1,109 @@ +use master +go + +create database bbs +go + +use bbs +go + +create table stulnfo +( + stuID int primary key identity(1,1), + stuName varchar(5) not null, + stuAge int , + stuSex varchar(2) default(0) check(stuSex=0 or stuSex=1), + time date null +) +go + +create table course +( + courseID int primary key identity(1,1), + courseName varchar(10) not null, + courseMarks int +) +go + +create table score +( + scoreID int primary key identity(1,1), + stuID int references stulnfo(stuID), + courseID int references course(courseID), + score int +) + +insert into stulnfo(stuName,stuAge,stuSex,time) values +('Tom',19,1,null), +('Jack',20,0,null), +('Rose',21,1,null), +('Lulu',19,1,null), +('Lili',21,0,null), +('abc',20,1,'2007-01-07') + +insert into course(courseName,courseMarks) values +('JavaBase',4), +('HTML',2), +('JavaScipt',2), +('SqlBase',2) + +insert into score(stuID,courseID,score) values +(1,1,80), +(1,2,85), +(1,4,50), +(2,1,75), +(2,3,45), +(2,4,75), +(3,1,45), +(4,1,95), +(4,2,75), +(4,3,90), +(4,4,45) + +select * from stulnfo +select * from course +select * from score + +select * from stulnfo s inner join score o on s.stuID=o.stuID +inner join course c on c.courseID=o.courseID +--题目: +--1.查询出每个学生所选修的课程的数量和所选修的课程的考试的平均分 +select s.stuID,stuName, count(courseName) 所选课程数量,avg(score) 平均分 from stulnfo s +inner join score o on s.stuID=o.stuID +inner join course c on c.courseID=o.courseID +group by s.stuID,stuName +--2.查询出每门课程的选修的学生的个数和学生考试的总分 +select courseName,count(courseMarks) 选修学生个数,sum(score) 考试总分 from stulnfo s +inner join score o on s.stuID=o.stuID +inner join course c on c.courseID=o.courseID +group by courseName +--3.查询出性别一样并且年龄一样的学生的信息 +select * from stulnfo s1 join stulnfo s2 on s1.stuName<>s2.stuName and s1.stuSex=s2.stuSex and s1.stuAge=s2.stuAge + +--4.查询出学分一样的课程信息 + select * from course c1 join course c2 on c1.courseName<>c2.courseName and c1.courseMarks=c2.courseMarks + +--5.查询出参加了考试的学生的学号,姓名,课程号和分数 +select s.stuID,stuName,c.courseID,score from stulnfo s inner join score o on s.stuID=o.stuID +inner join course c on c.courseID=o.courseID + +--6.查询出参加了考试的学生的学号,课程号,课程名,课程学分和分数 +select s.stuID,c.courseID,courseName,courseMarks,score from stulnfo s inner join score o on s.stuID=o.stuID +inner join course c on c.courseID=o.courseID + +--7.查询出没有参加考试的学生的学号和姓名 +select * from stulnfo s left join score o on s.stuID=o.stuID + +--8.查询出是周六周天来报到的学生 +select * from stulnfo where time>='2007-01-07' + +--9.查询出姓名中有字母a的学生的信息 +select * from stulnfo where stuName like '%a%' + +--10.查询出选修了2门课程以上的并且考试平均分在70以上的学生的学号和考试平均分以及选修课程的数量 +select s.stuID ,count(courseName) 选修课程数量,avg(score) 平均分 from stulnfo s inner join score o on s.stuID=o.stuID +inner join course c on c.courseID=o.courseID group by s.stuID having count(courseName)>=2 and avg(score)>=70 + + + + -- Gitee From 33b4290bcbbe47340462bf4670a42801d310055e Mon Sep 17 00:00:00 2001 From: guozhencan <1431250115@qq.com> Date: Wed, 31 Mar 2021 11:54:17 +0800 Subject: [PATCH 049/144] first commit --- .../SQLQuery1.sql" | 126 ++++++++++++++++++ 1 file changed, 126 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\203\255\346\214\257\347\201\277/SQLQuery1.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\203\255\346\214\257\347\201\277/SQLQuery1.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\203\255\346\214\257\347\201\277/SQLQuery1.sql" new file mode 100644 index 0000000..65057ed --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\203\255\346\214\257\347\201\277/SQLQuery1.sql" @@ -0,0 +1,126 @@ +use master +go +create database CCA +on +( +name='CCA', +filename='D:\SQL\CCA.mdf', +size=5MB, +maxsize = 50MB, +filegrowth=10% +) +log on +( +name='CCA_log', +filename='D:\SQL\CCA_log.ldf', +size=5MB, +maxsize=50MB, +filegrowth=10% +) +go +use CCA +go +--有如图所示的三张表结构,学生信息表(stuInfo),课程信息表(courseInfo),分数信息表(scoreInfo) +create table stuInfo +( +stuID int primary key, +stuName nvarchar(10) not null, +stuAge nvarchar(10) not null, +stuSex nvarchar(20) check(stuSex='1' or stuSex='0') not null, +time datetime +) +insert into stuInfo values +('1','Tom',19,1,Null), +('2','Jack',20,0,Null), +('3','Rose',21,1,Null), +('4','Lulu',19,1,Null), +('5','Lili',21,0,Null), +('6','abc',20,1,'2007-01-07 01:11:36.590') +select * from stuInfo + +create table courseInfo +( +courseID int primary key, +courseName nvarchar(10) not null, +courseMarks int not null +) +insert into courseInfo values +('1','JavaBase',4), +('2','HTML',2), +('3','JavaScript',2), +('4','SqlBase',2) +select * from courseInfo + + +create table scoreInfo +( +scoreID int primary key, +stuID int references stuInfo(stuID), +courseID int references courseInfo(courseID), +score int not null +) +insert into scoreInfo values +(1,1,1,80), +(2,1,2,85), +(3,1,4,50), +(4,2,1,75), +(5,2,3,45), +(6,2,4,75), +(7,3,1,45), +(8,4,1,95), +(9,4,2,75), +(10,4,3,90), +(11,4,4,45) +select * from scoreInfo +--题目: +select * from stuInfo +select * from courseInfo +select * from scoreInfo +--1.查询出 每个学生 所选修的课程的数量 和 所选修的课程的考试的平均分 + +select I.stuID,I.stuName,COUNT(*) 所选修的课程的数量,AVG(score) 所选修的课程的考试的平均分 from scoreInfo S + inner join stuInfo I on I.stuID=S.stuID + group by I.stuID,I.stuName + +--2.查询出 每门课程 的选修的学生 的个数 和 学生考试的总分 + +select C.courseID,C.courseName,COUNT(*)'学生的个数',SUM(score)'学生考试的总分' from courseInfo C +inner join scoreInfo S on C. courseID = S.courseID +group by C.courseID,C.courseName + +--3.查询出 性别一样 并且 年龄一样 的 学生的信息 + +select * from stuInfo S join stuInfo I on S.stuAge=I.stuAge AND S.stuSex = I.stuSex AND S.stuID != I.stuID + +--4.查询出 学分一样 的 课程信息 + +select * from courseInfo C join courseInfo I on C.courseMarks = I.courseMarks AND C.courseID <> I.courseID + +--5.查询出 参加了考试的学生的学号,姓名,课程号 和 分数 + +select S.stuID 学号,stuName 姓名,C.courseID 课程号,score 分数 from scoreInfo S join courseInfo C on S.courseID = C.courseID join stuInfo I on S.stuID = I.stuID +group by S.stuID,stuName,C.courseID,score + +--6.查询出 参加了考试的 学生的学号,课程号,课程名,课程学分和分数 + +select S.stuID 学生的学号,C.courseID 课程号,C.courseName 课程名,C.courseMarks 课程学分,S.score 分数 from scoreInfo S join courseInfo C on S.courseID = C.courseID + +--7.查询出没有参加考试的学生的学号和姓名 + +select I.stuID 学号,I.stuName 姓名 from stuInfo I left join scoreInfo S on I.stuID = S.stuID where S.score is null + +--8.查询出是周六周天来报到的学生 + +select * from stuInfo where DATENAME(WEEKDAY,time) = '星期六' or DATENAME(WEEKDAY,time) = '星期日' + +--9.查询出姓名中有字母a的学生的信息 + +select * from stuInfo where stuName like '%a%' + +--10.查询出 选修了2门课程以上 的并且 考试平均分在70以上 的 学生的学号 和 考试平均分 以及 选修课程的数量 + +select S.stuID 学号, COUNT(*) 选修课程的数量 ,AVG(score) 平均分 from scoreInfo S join stuInfo I on S.stuID = I.stuID + group by S.stuID +having COUNT(*) > 2 and AVG(score) > 70 + + -- Gitee From 8c564615e37f540579a45dfc0f2aa9e3d0148291 Mon Sep 17 00:00:00 2001 From: laozifule <321942204@qq.com> Date: Wed, 31 Mar 2021 11:57:16 +0800 Subject: [PATCH 050/144] sss --- .../SQLQuery1.sql" | 109 ++++++++++++++++++ 1 file changed, 109 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\216\213\345\206\240\346\235\260/SQLQuery1.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\216\213\345\206\240\346\235\260/SQLQuery1.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\216\213\345\206\240\346\235\260/SQLQuery1.sql" new file mode 100644 index 0000000..24319cd --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\216\213\345\206\240\346\235\260/SQLQuery1.sql" @@ -0,0 +1,109 @@ +use master +go + +create database bbs +go + +use bbs +go + +create table stulnfo +( + stuID int primary key identity(1,1), + stuName varchar(5) not null, + stuAge int , + stuSex varchar(2) default(0) check(stuSex=0 or stuSex=1), + time date null +) +go + +create table course +( + courseID int primary key identity(1,1), + courseName varchar(10) not null, + courseMarks int +) +go + +create table score +( + scoreID int primary key identity(1,1), + stuID int references stulnfo(stuID), + courseID int references course(courseID), + score int +) + +insert into stulnfo(stuName,stuAge,stuSex,time) values +('Tom',19,1,null), +('Jack',20,0,null), +('Rose',21,1,null), +('Lulu',19,1,null), +('Lili',21,0,null), +('abc',20,1,'2007-01-07') + +insert into course(courseName,courseMarks) values +('JavaBase',4), +('HTML',2), +('JavaScipt',2), +('SqlBase',2) + +insert into score(stuID,courseID,score) values +(1,1,80), +(1,2,85), +(1,4,50), +(2,1,75), +(2,3,45), +(2,4,75), +(3,1,45), +(4,1,95), +(4,2,75), +(4,3,90), +(4,4,45) + +select * from stulnfo +select * from course +select * from score + +select * from stulnfo s inner join score o on s.stuID=o.stuID +inner join course c on c.courseID=o.courseID +--题目: +--1.查询出每个学生所选修的课程的数量和所选修的课程的考试的平均分 +select s.stuID,stuName, count(courseName) 所选课程数量,avg(score) 平均分 from stulnfo s +inner join score o on s.stuID=o.stuID +inner join course c on c.courseID=o.courseID +group by s.stuID,stuName +--2.查询出每门课程的选修的学生的个数和学生考试的总分 +select courseName,count(courseMarks) 选修学生个数,sum(score) 考试总分 from stulnfo s +inner join score o on s.stuID=o.stuID +inner join course c on c.courseID=o.courseID +group by courseName +--3.查询出性别一样并且年龄一样的学生的信息 +select * from stulnfo s1 join stulnfo s2 on s1.stuName<>s2.stuName and s1.stuSex=s2.stuSex and s1.stuAge=s2.stuAge + +--4.查询出学分一样的课程信息 + select * from course c1 join course c2 on c1.courseName<>c2.courseName and c1.courseMarks=c2.courseMarks + +--5.查询出参加了考试的学生的学号,姓名,课程号和分数 +select s.stuID,stuName,c.courseID,score from stulnfo s inner join score o on s.stuID=o.stuID +inner join course c on c.courseID=o.courseID + +--6.查询出参加了考试的学生的学号,课程号,课程名,课程学分和分数 +select s.stuID,c.courseID,courseName,courseMarks,score from stulnfo s inner join score o on s.stuID=o.stuID +inner join course c on c.courseID=o.courseID + +--7.查询出没有参加考试的学生的学号和姓名 +select * from stulnfo s left join score o on s.stuID=o.stuID + +--8.查询出是周六周天来报到的学生 +select * from stulnfo where time>='2007-01-07' + +--9.查询出姓名中有字母a的学生的信息 +select * from stulnfo where stuName like '%a%' + +--10.查询出选修了2门课程以上的并且考试平均分在70以上的学生的学号和考试平均分以及选修课程的数量 +select s.stuID ,count(courseName) 选修课程数量,avg(score) 平均分 from stulnfo s inner join score o on s.stuID=o.stuID +inner join course c on c.courseID=o.courseID group by s.stuID having count(courseName)>=2 and avg(score)>=70 + + + + -- Gitee From 75a0c78113589c3ac0639faafaa4edc25a3303a9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=85=A2=E2=85=A9-SY?= <1527933908@qq.com> Date: Wed, 31 Mar 2021 12:02:13 +0800 Subject: [PATCH 051/144] =?UTF-8?q?=E6=96=B0=E5=BB=BA=20=E6=9E=97=E6=80=9D?= =?UTF-8?q?=E5=B0=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\346\236\227\346\200\235\345\260\271/.keep" | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\236\227\346\200\235\345\260\271/.keep" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\236\227\346\200\235\345\260\271/.keep" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\236\227\346\200\235\345\260\271/.keep" new file mode 100644 index 0000000..e69de29 -- Gitee From 620e4e4392b4a00e4dd63e05117e2686f90325b7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=85=A2=E2=85=A9-SY?= <1527933908@qq.com> Date: Wed, 31 Mar 2021 12:02:35 +0800 Subject: [PATCH 052/144] =?UTF-8?q?=E6=9E=97=E6=80=9D=E5=B0=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SQLQuery2.sql" | 104 ++++++++++++++++++ 1 file changed, 104 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\236\227\346\200\235\345\260\271/SQLQuery2.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\236\227\346\200\235\345\260\271/SQLQuery2.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\236\227\346\200\235\345\260\271/SQLQuery2.sql" new file mode 100644 index 0000000..61ee4b6 --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\236\227\346\200\235\345\260\271/SQLQuery2.sql" @@ -0,0 +1,104 @@ +Use Master +go +Create Database student +on +(name='student', + filename='D:\student.mdf', + size=10mb, + maxsize=100mb, + filegrowth=10% + ) + log on + (name='student_log', + filename='D:\student_log.ldf', + size=10mb, + maxsize=100mb, + filegrowth=10% + ) + go +Use student +go +CREATE table stuInfo +( + stuID int primary key identity, + stuName varchar(20) not null, + stuAge int not null, + stuSex int check(stuSex in (0,1)), + time datetime + ) +go +create table courseInfo +(courseID int primary key identity, + courseName varchar(20) not null, + courseMarks int not null + ) + go + Create table scoreInfo + (scoreID int primary key identity, + stuID int references stuInfo(stuID) not null, + courseID int references courseInfo(courseID) not null, + score int not null + ) + go + insert into stuInfo values + ('Tom',19,1,NULL), + ('Jack',20,0,NULL), + ('Rose',21,1,NULL), + ('Lulu',19,1,NULL), + ('Lili',21,0,NULL), + ('abc',20,1,'2007-01-07 01:11:36.590') + go + insert into courseInfo values + ('JavaBase',4), + ('HTML',2), + ('JavaScript',2), + ('SqlBase',2) + go + insert into scoreInfo values + (1,1,80), + (1,2,85), + (1,4,50), + (2,1,75), + (2,3,45), + (2,4,75), + (3,1,45), + (4,1,95), + (4,2,75), + (4,3,90), + (4,4,45) +go +select* from stuInfo +select* from courseInfo +select* from scoreInfo +--题目: +--1.查询出每个学生所选修的课程的数量和所选修的课程的考试的平均分 + +select i.stuName ,count(*)数量 ,avg(score)平均分 from scoreInfo s JOIN stuInfo i on i. stuID= s .stuID group by i.stuName + +--2.查询出每门课程的选修的学生的个数和学生考试的总分 +select c.courseName, count(*) '选修的学生个数', sum(score) '总分'from courseInfo c join scoreInfo s on c.courseID = s.courseID group by c.courseName +--3.查询出性别一样并且年龄一样的学生的信息 +select s1.* from stuInfo s1 join stuInfo s2 on s1.stuName<>s2.stuName and s1. stuSex=s2.stuSex and s1.stuAge =s2.stuAge + + +--4.查询出学分一样的课程信息 +select distinct c1.* from courseInfo c1 join courseInfo c2 on (c1.courseID <> c2.courseID) and (c1.courseMarks = c2.courseMarks ) + + +--5.查询出参加了考试的学生的学号,姓名,课程号和分数 +select st.stuID, st.stuName, s.courseID, s.score from scoreInfo s join stuInfo st on s.stuID = st.stuID + +--6.查询出参加了考试的学生的学号,课程号,课程名,课程学分和分数 +select s.stuID, s.courseID, c.courseName, c.courseMarks , s.score from scoreInfo s join courseInfo c on c.courseID = s.courseID +--7.查询出没有参加考试的学生的学号和姓名 +select st.stuID, st.stuName from stuInfo st left join scoreInfo sc on sc.stuID = st.stuID where sc.scoreID is null + +--8.查询出是周六周天来报到的学生 +select * from stuInfo where DATENAME(dw, time) = '星期六' or DATENAME(dw, time) = '星期日' + +--9.查询出姓名中有字母a的学生的信息 +select * from stuInfo where stuName like '%a%' + +--10.查询出选修了2门课程以上的并且考试平均分在70以上的学生的学号和考试平均分以及选修课程的数量 +select stuID '学号', round(avg(cast(score as float)), 1) '平均成绩', count(*) '选课数量' from scoreInfo group by stuID having count(*) > 2 and round(avg(cast(score as float)), 1) > 70 + \ No newline at end of file -- Gitee From 6d81277af9c4f47d85410a1fc3c5fe096267466c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=A5=BF=E6=B6=9B?= <2744453563@qq.com> Date: Wed, 31 Mar 2021 12:15:18 +0800 Subject: [PATCH 053/144] =?UTF-8?q?=E6=96=B0=E5=BB=BA=20=E8=94=A1=E8=A5=BF?= =?UTF-8?q?=E6=B6=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\350\224\241\350\245\277\346\266\233/.keep" | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\224\241\350\245\277\346\266\233/.keep" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\224\241\350\245\277\346\266\233/.keep" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\224\241\350\245\277\346\266\233/.keep" new file mode 100644 index 0000000..e69de29 -- Gitee From 92829616f3b8c6e6c1e56d64e75bba74be148da4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=A5=BF=E6=B6=9B?= <2744453563@qq.com> Date: Wed, 31 Mar 2021 12:16:17 +0800 Subject: [PATCH 054/144] =?UTF-8?q?=E8=94=A1=E8=A5=BF=E6=B6=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SQLQuery1.sql" | 86 +++++++++++++++++++ 1 file changed, 86 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\224\241\350\245\277\346\266\233/SQLQuery1.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\224\241\350\245\277\346\266\233/SQLQuery1.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\224\241\350\245\277\346\266\233/SQLQuery1.sql" new file mode 100644 index 0000000..0f213b5 --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\224\241\350\245\277\346\266\233/SQLQuery1.sql" @@ -0,0 +1,86 @@ +use master + +create database LAN +on +( + name='LAN', + filename='D:\LAN.mdf', + size=5, + maxsize=15, + filegrowth=15 +) +log on +( + name='LAN_log', + filename='D:\LAN_log.ldf', + size=5, + maxsize=15, + filegrowth=15 +) +go +use LAN +go +create table stuinfo +( + stuid int primary key, + stuname nvarchar(10) not null, + stuage nvarchar(10) not null, + stusex nvarchar(1) check(stusex='0'or stusex='1'), + stutime date +) +create table courseinfo +( + courseid int primary key not null, + coursename nvarchar(10) not null, + coursemarks nvarchar(10) not null, +) +create table scoreinfo +( + scoreid int primary key identity(1,1) not null, + stuid int references stuinfo(stuid), + courseid int references courseinfo(courseid), + score int check(score>=0 and score<=100) +) +insert into stuinfo values (1,'Tom',19,1,''),(2,'Jack',20,0,''), + (3,'Rose',21,1,''),(4,'Lulu',19,1,''),(5,'Lili',21,0,''),(6,'abc',20,1,'2007-01-07') +insert into courseinfo values (1,'JavaBase',4),(2,'HTML',2), + (3,'JavaScript',2),(4,'SqlBase',2) +insert into scoreinfo values(1,1,80), + (1,2,85), + (1,4,50), + (2,1,75), + (2,3,45), + (2,4,75), + (3,1,45), + (4,1,95), + (4,2,75), + (4,3,90), + (4,4,45) + +select *from stuinfo +select *from courseinfo +select *from scoreinfo +--1.查询出每个学生所选修的课程的数量和所选修的课程的考试的平均分 + select S.StuID , count(*) 所选课程的数量 , AVG(score) 所选修课程的考试平均分 from StuInfo S inner join scoreInfo C on S.StuID=C.StuID inner join + courseInfo U on U.courseID = C.courseID group by S.StuID +--2.查询出每门课程的选修的学生的个数和学生考试的总分 + select courseName , count(*) , sum(score) from StuInfo S inner join scoreInfo C on S.StuID=C.StuID inner join courseInfo U on U.courseID = C.courseID group by courseName +--3.查询出性别一样并且年龄一样的学生的信息 + select * from StuInfo S,StuInfo I where S.StuAge=I.StuAge AND S.StuSex=I.StuSex and S.StuID<>I.StuID +--4.查询出学分一样的课程信息 + select * from CourseInfo C,CourseInfo I where C.CourseMarks=I.CourseMarks and C.CourseID<>I.CourseID +--5.查询出参加了考试的学生的学号,姓名,课程号和分数 + select S.StuID 学号 , StuName 姓名 , U.courseID 课程号 ,score 分数 from StuInfo S inner join scoreInfo C on S.StuID=C.StuID inner join courseInfo U on U.courseID = C.courseID +--6.查询出参加了考试的学生的学号,课程号,课程名,课程学分和分数 + select S.StuID 学号 , U.courseID 课程号 , courseName 课程名 , courseMarks 课程学分 , score 分数 from StuInfo S inner join + scoreInfo C on S.StuID=C.StuID inner join courseInfo U on U.courseID = C.courseID +--7.查询出没有参加考试的学生的学号和姓名 + select S.StuID 学号 , StuName 姓名 from ScoreInfo I right join StuInfo S on I.StuID=S.StuID where Score is null or Score='' +--8.查询出是周六周天来报到的学生 + select * from StuInfo where datename(weekday,stutime)='星期六' or datename(weekday,stutime)='星期日' +--9.查询出姓名中有字母a的学生的信息 + select * from StuInfo where StuName like '%a%' or StuName like '%A%' +--10.查询出选修了2门课程以上的并且考试平均分在70以上的学生的学号和 +--考试平均分以及选修课程的数量 + select S.StuID 学号 , COUNT(*) 课程数量 , AVG(Score) 平均分 from ScoreInfo I inner join StuInfo S on I.StuID=S.StuID group by + S.StuID having COUNT(*)>2 and AVG(Score)>70 -- Gitee From 63afda1fcd192e17b85ed70256a91ae2651a3c7b Mon Sep 17 00:00:00 2001 From: pp20020501 <2382571669@qq.com> Date: Wed, 31 Mar 2021 12:33:18 +0800 Subject: [PATCH 055/144] =?UTF-8?q?=E6=96=B0=E5=BB=BA=20=E6=BD=98=E6=99=B6?= =?UTF-8?q?=E5=A9=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\346\275\230\346\231\266\345\251\267/.keep" | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\275\230\346\231\266\345\251\267/.keep" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\275\230\346\231\266\345\251\267/.keep" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\275\230\346\231\266\345\251\267/.keep" new file mode 100644 index 0000000..e69de29 -- Gitee From e5acc88ef719af2062c6e9f90e5d8992be1db679 Mon Sep 17 00:00:00 2001 From: pp20020501 <2382571669@qq.com> Date: Wed, 31 Mar 2021 12:34:04 +0800 Subject: [PATCH 056/144] =?UTF-8?q?=E6=BD=98=E6=99=B6=E5=A9=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...2\344\270\200\344\273\243\347\240\201.txt" | 121 ++++++++++++++++++ 1 file changed, 121 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\275\230\346\231\266\345\251\267/\344\275\234\344\270\232\344\270\200\344\273\243\347\240\201.txt" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\275\230\346\231\266\345\251\267/\344\275\234\344\270\232\344\270\200\344\273\243\347\240\201.txt" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\275\230\346\231\266\345\251\267/\344\275\234\344\270\232\344\270\200\344\273\243\347\240\201.txt" new file mode 100644 index 0000000..bad5956 --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\275\230\346\231\266\345\251\267/\344\275\234\344\270\232\344\270\200\344\273\243\347\240\201.txt" @@ -0,0 +1,121 @@ +--浣滀笟涓 + +use master +go + +create database SQL11 +on +( + name='SQL11', + filename='D:\SQL11.mdf', + size=5MB, + maxsize=5MB, + filegrowth=10% +) +log on +( + name='SQL11_log', + filename='D:\SQL11_log.ldf', + size=5MB, + maxsize=5MB, + filegrowth=10% +) +go + +use SQL11 +go + +create table Stuinfo +( + StuID int primary key identity(1,1), + StuName nvarchar(10), + StuAge int, + StuSex int, + STime datetime default(cast('2007-01-07 01:11:36.590' as datetime)) +) + +insert into Stuinfo values ('Tom',19,1,null), +('Jack',20,0,null), +('Rose',21,1,null), +('Lulu',19,1,null), +('Lili',21,0,null), +('abc',20,1 ,default) + +select * from Stuinfo + +create table CourseInfo +( + CourseID int primary key identity(1,1), + CourseName nvarchar(10), + CourseMarks int +) + +insert into CourseInfo values('JavaBase',4), +('HTML',2), +('JavaScript',2), +('SqlBase',2) + +select * from CourseInfo + +create table ScoreInfo +( + ScoreID int primary key identity(1,1), + StuID int references Stuinfo(StuID), + CourseID int references CourseInfo(CourseID), + Score int +) + +insert into ScoreInfo values (1,1,80), +(1,2,85),(1,4,50),(2,1,75),(2,3,45),(2,4,75), +(3,1,45),(4,1,95),(4,2,75),(4,3,90),(4,4,45) + +select * from ScoreInfo + +select * from Stuinfo +select * from CourseInfo +select * from ScoreInfo + +--鏈夊鍥炬墍绀虹殑涓夊紶琛ㄧ粨鏋勶紝瀛︾敓淇℃伅琛紙stuInfo锛夛紝璇剧▼淇℃伅琛紙courseInfo锛,鍒嗘暟淇℃伅琛紙scoreInfo锛 + +--棰樼洰锛 +--1.鏌ヨ鍑烘瘡涓鐢 鎵閫変慨鐨勮绋嬬殑鏁伴噺 鍜屾墍閫変慨鐨勮绋嬬殑鑰冭瘯鐨勫钩鍧囧垎 +select st.StuID 瀛︾敓鍙,StuName 瀛︾敓濮撳悕,count(co.CourseID) 鎵閫夎绋嬫暟閲,AVG(Score) 骞冲潎鍒 from ScoreInfo sc +inner join CourseInfo co on sc.CourseID=co.CourseID +inner join Stuinfo st on st.StuID=sc.StuID group by st.StuID,StuName + +--2.鏌ヨ鍑烘瘡闂ㄨ绋 鐨勯変慨鐨勫鐢熺殑涓暟 鍜屽鐢熻冭瘯鐨勬诲垎 +select co.CourseID 璇剧▼鍙 ,CourseName 璇剧▼鍚嶇О,count(st.StuID) 瀛︾敓涓暟,sum(Score) 鑰冭瘯鎬诲垎 from ScoreInfo sc +inner join Stuinfo st on st.StuID=sc.StuID +inner join CourseInfo co on sc.CourseID=co.CourseID group by co.CourseID,CourseName + + +--3.鏌ヨ鍑烘у埆涓鏍峰苟涓斿勾榫勪竴鏍风殑瀛︾敓鐨勪俊鎭 +select * from Stuinfo A join Stuinfo B on A.StuSex=B.StuSex and A.StuAge=B.StuAge and A.StuName<>B.StuName + +--4.鏌ヨ鍑哄鍒嗕竴鏍风殑璇剧▼淇℃伅 +select distinct A.* from CourseInfo A join CourseInfo B on A.CourseMarks=B.CourseMarks and A.CourseName<>B.CourseName + +--5.鏌ヨ鍑哄弬鍔犱簡鑰冭瘯鐨勫鐢熺殑瀛﹀彿锛屽鍚嶏紝璇剧▼鍙峰拰鍒嗘暟 +select st.StuID 瀛︾敓鍙,StuName 瀛︾敓濮撳悕,sc.CourseID 璇剧▼鍙,Score 鍒嗘暟 from ScoreInfo sc +inner join Stuinfo st on st.StuID=sc.StuID +inner join courseInfo co on sc.courseID=co.courseID + +--6.鏌ヨ鍑哄弬鍔犱簡鑰冭瘯鐨勫鐢熺殑瀛﹀彿锛岃绋嬪彿锛岃绋嬪悕锛岃绋嬪鍒嗗拰鍒嗘暟 +select st.StuID 瀛︾敓鍙,sc.CourseID 璇剧▼鍙,CourseName 璇剧▼鍚嶅瓧,courseMarks 璇剧▼瀛﹀垎,Score 鍒嗘暟 from ScoreInfo sc +inner join Stuinfo st on st.StuID=sc.StuID +inner join courseInfo co on sc.courseID=co.courseID + +--7.鏌ヨ鍑烘病鏈夊弬鍔犺冭瘯鐨勫鐢熺殑瀛﹀彿鍜屽鍚 +select * from stuInfo left join scoreInfo on stuInfo.stuID = scoreInfo.stuID where score is null + + +--8.鏌ヨ鍑烘槸鍛ㄥ叚鍛ㄥぉ鏉ユ姤鍒扮殑瀛︾敓 + + +--9.鏌ヨ鍑哄鍚嶄腑鏈夊瓧姣峚鐨勫鐢熺殑淇℃伅 +select StuName from Stuinfo where StuName like '%a%' + +--10.鏌ヨ鍑洪変慨浜2闂ㄨ绋嬩互涓婄殑骞朵笖鑰冭瘯骞冲潎鍒嗗湪70浠ヤ笂鐨勫鐢熺殑瀛﹀彿鍜岃冭瘯骞冲潎鍒嗕互鍙婇変慨璇剧▼鐨勬暟閲 +select sc.stuID 瀛﹀彿,stuName 濮撳悕,avg(score)骞冲潎鍒,count(co.courseID)璇剧▼鏁 from scoreInfo sc +inner join stuInfo st on sc.stuID=st.stuID +inner join courseInfo co on sc.courseID=co.courseID group by sc.stuID,stuName having avg(score)>70 -- Gitee From e68a014fdd9fd56b1dc8bc445e84bc59cc86406a Mon Sep 17 00:00:00 2001 From: wx_54a5b54ed1 <2496363855@qq.com> Date: Wed, 31 Mar 2021 13:05:10 +0800 Subject: [PATCH 057/144] lsh --- .../3.30.sql" | 86 +++++++++++++++++++ 1 file changed, 86 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\242\201\344\270\226\350\261\252/3.30.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\242\201\344\270\226\350\261\252/3.30.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\242\201\344\270\226\350\261\252/3.30.sql" new file mode 100644 index 0000000..a08aa6d --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\242\201\344\270\226\350\261\252/3.30.sql" @@ -0,0 +1,86 @@ +use master +go +create database Student +on( + name = 'Student.mdf', + filename='D:\Student.mdf', + size=5, + maxsize=10, + filegrowth=15% +) +log on( + name = 'Student_log.ldf', + filename='D:\Student_log.ldf', + size=5, + maxsize=10, + filegrowth=15% +) +go +use Student +go +create table stuInfo +( + stuID int primary key identity(1,1), + stuName nvarchar(7) not null, + stuAge int not null, + stuSex nvarchar(1) not null, + time datetime +) +create table courseInfo +( + courseID int primary key identity(1,1), + courseName nvarchar(10) not null, + courseMarks nvarchar(5) +) +create table scoreInfo +( + scoreID int primary key identity(1,1), + stuID int references stuInfo(stuID), + courseID int references courseInfo(courseID), + score int not null +) +insert into stuInfo (stuName,stuAge,stuSex,time) values ('Tom',19,'1',null), +('Jack',20,'0',null),('Rose',21,'1',null),('Lulu',19,'1',null), +('Lili',21,'0',null),('abc',20,'1','2007-01-07 01:11:36.590') +insert into courseInfo (courseName,courseMarks) values ('JavaBase','4'), +('HTML','2'),('JavaScript','2'),('SqlBase','2') +insert into scoreInfo(stuID,courseID,score) +values('1','1','80'),('1','2','85'),('1','4','50'),('2','1','75'),('2','3','45'), +('2','4','75'),('3','1','45'),('4','1','95'),('4','2','75'),('4','3','90'),('4','4','95') +--有如图所示的三张表结构,学生信息表(stuInfo),课程信息表(courseInfo),分数信息表(scoreInfo) +--题目: +select * from stuInfo +select * from courseInfo +select * from scoreInfo + +--1.查询出每个学生所选修的课程的数量和所选修的课程的考试的平均分 +select stuName 学生 ,count(courseInfo.courseID) 课程数量,AVG(score) 平均分 from stuInfo inner join scoreInfo +on stuInfo.stuID=scoreInfo.stuID inner join courseInfo on courseInfo.courseID=scoreInfo.courseID group by + stuName +--2.查询出每门课程的选修的学生的个数和学生考试的总分 +select courseName 课程名称, COUNT(scoreInfo.courseID) 学生个数 ,sum(score) 总分 from stuInfo inner join scoreInfo +on stuInfo.stuID=scoreInfo.stuID inner join courseInfo on courseInfo.courseID=scoreInfo.courseID group by + scoreInfo.courseID,courseName +--3.查询出性别一样并且年龄一样的学生的信息 +select * from stuInfo a left join stuInfo b on a.stuSex=b.stuSex and a.stuAge=b.stuAge +--4.查询出学分一样的课程信息 +select * from courseInfo A inner join courseInfo B on A.courseMarks = B.courseMarks and A.courseID<>B.courseID +--5.查询出参加了考试的学生的学号,姓名,课程号和分数 +select stuInfo.stuID 学号,stuInfo.stuName 姓名,courseInfo.courseID 课程号, scoreInfo.score 分数 from stuInfo inner join scoreInfo +on stuInfo.stuID=scoreInfo.stuID inner join courseInfo on courseInfo.courseID=scoreInfo.courseID +--6.查询出参加了考试的学生的学号,课程号,课程名,课程学分和分数 +select stuInfo.stuID 学号,courseInfo.courseID 课程号,courseInfo.courseMarks 课程学分, scoreInfo.score 分数 from stuInfo inner join scoreInfo +on stuInfo.stuID=scoreInfo.stuID inner join courseInfo on courseInfo.courseID=scoreInfo.courseID +--7.查询出没有参加考试的学生的学号和姓名 +select stuInfo.stuID 学号,stuInfo.stuName 姓名 from stuInfo inner join scoreInfo +on stuInfo.stuID=scoreInfo.stuID inner join courseInfo on courseInfo.courseID=scoreInfo.courseID where +stuInfo.stuID is null and stuInfo.stuName is null +--8.查询出是周六周天来报到的学生 +select * from StuInfo where datename(weekday,time)='星期六' or datename(weekday,time)='星期日' +--9.查询出姓名中有字母a的学生的信息 +select * from StuInfo where stuName like '%a%' +--10.查询出选修了2门课程以上的并且考试平均分在70以上的学生的学号和考试平均分以及选修课程的数量 +select stuInfo.stuID 学号,avg(scoreInfo.score) 考试平均分,COUNT(courseInfo.courseID) 选修课程的数量 from stuInfo inner join scoreInfo +on stuInfo.stuID=scoreInfo.stuID inner join courseInfo on courseInfo.courseID=scoreInfo.courseID +GROUP BY stuInfo.stuID HAVING COUNT(courseInfo.courseID)>=2 +AND avg(scoreInfo.score)>=70 -- Gitee From 92a2e4a5ab6cb6243e5ff525a319e231b736267f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=BB=83=E6=96=87=E6=B5=A9?= <1208984334@qq.com> Date: Wed, 31 Mar 2021 13:07:55 +0800 Subject: [PATCH 058/144] zy --- .../SQLQuery2.sql" | 103 ++++++++++++++++++ 1 file changed, 103 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\273\203\346\226\207\346\265\251/SQLQuery2.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\273\203\346\226\207\346\265\251/SQLQuery2.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\273\203\346\226\207\346\265\251/SQLQuery2.sql" new file mode 100644 index 0000000..440f9d4 --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\273\203\346\226\207\346\265\251/SQLQuery2.sql" @@ -0,0 +1,103 @@ +use master +go + +create database Student +on +( +name ='Student', +filename='D:\Student.mdf', +size=5MB, +maxsize=50MB, +filegrowth=50% +) + +log on +( +name='Student_log', +filename='D:\Student_log.ldf', +size=5MB, +maxsize=50MB, +filegrowth=50% +) +go + +use Student +go + +create table StuInfo +( + StuID int primary key identity(1,1), + StuName nvarchar(10), + StuAge int , + StuSex varchar(2) check (StuSex in (1,0) ), + Time datetime , + +) + +create table CourseInfo +( + CourseID int primary key identity(1,1), + CourseName nvarchar(20) , + CourseMarks int , + +) + +create table ScoreInfo +( + ScoreID int identity, + StuID int references StuInfo(StuID), + CourseID int references CourseInfo(CourseID), + Score int , +) + +insert into StuInfo(StuName,StuAge,StuSex,Time) values +('Tom',19,'1',null), +('Jack',20,'0',null), +('Rose',21,'1',null), +('Lulu',19,'1',null), +('Lili',21,'0',null), +('abc',20,'1','2007-01-07 01:11:36.590') + +insert into CourseInfo(CourseName,CourseMarks) values +('JavaBase',4),('HTML',2),('JAVAScript',2) + +insert into ScoreInfo(StuID,CourseID,Score) values +(1,1,80),(1,2,85),(1,4,50),(2,1,75),(2,3,45),(2,4,75),(3,1,45), +(4,1,95),(4,2,75),(4,3,90),(4,4,45) + + +Select * from StuInfo +Select * from CourseInfo +Select * from ScoreInfo +--1.查询出每个学生所选修的课程的数量和所选修的课程的考试的平均分 + +Select T.StuID,T.StuName,count(CourseName) 选课数量, avg(Score) 平均分 from ScoreInfo S inner join StuInfo T on S.StuID=T.StuID +inner join CourseInfo C on C.CourseID=S.CourseID group by T.StuID,T.StuName + +--2.查询出每门课程的选修的学生的个数和学生考试的总分 +Select C.CourseName,C.CourseID,count(*) 选修的个数,sum(Score) 考试总分 from ScoreInfo S inner join CourseInfo C on C.CourseID=S.CourseID +group by C.CourseName,C.CourseID + +--3.查询出性别一样并且年龄一样的学生的信息 +Select S.StuID,S.StuName,S.StuAge,S.StuSex from StuInfo S inner join + StuInfo T on S.StuAge=T.StuAge and S.StuSex=T.StuSex and S.StuName!=T.StuName + +--4.查询出学分一样的课程信息 +Select * from CourseInfo C,CourseInfo R where C.CourseMarks=R.CourseMarks and C.CourseID<>R.CourseID +group by C.CourseName,C.CourseID,C.CourseMarks + +--5.查询出参加了考试的学生的学号,姓名,课程号和分数 +Select S.StuID 学生学号 , StuName 姓名 , C.CourseID 课程号 , Score 分数 from ScoreInfo S inner join StuInfo I on S.StuID=I.StuID inner join +CourseInfo C on S.CourseID=C.CourseID group by S.StuID,StuName,C.CourseID,Score +--6.查询出参加了考试的学生的学号,课程号,课程名,课程学分和分数 +select S.StuID 学生学号 , C.CourseID 课程号 , CourseName 课程名, CourseMarks 课程学分 , Score 分数 from ScoreInfo S inner join StuInfo I on S.StuID=I.StuID inner join +CourseInfo C on S.CourseID=C.CourseID group by S.StuID,C.CourseID,CourseName,CourseMarks,Score +--7.查询出没有参加考试的学生的学号和姓名 +select S.StuID 学号 , StuName 姓名 from ScoreInfo I right join StuInfo S on I.StuID=S.StuID where Score is null or Score='' +--8.查询出是周六周天来报到的学生 +select * from StuInfo where datename(weekday,StuTime)='星期六' or datename(weekday,StuTime)='星期日' +--9.查询出姓名中有字母a的学生的信息 +select * from StuInfo where StuName like '%a%' or StuName like '%A%' +--10.查询出选修了2门课程以上的并且考试平均分在70以上的学生的学号和考试平均分以及选修课程的数量 +select S.StuID 学号 , COUNT(*) 课程数量 , AVG(Score) 平均分 from ScoreInfo I inner join +StuInfo S on I.StuID=S.StuID group by S.StuID having COUNT(*)>2 and AVG(Score)>70 \ No newline at end of file -- Gitee From eef29a90960716f5aa30edc9aea28d17d98b28e4 Mon Sep 17 00:00:00 2001 From: wx_tjmyf <2748168262@qq.com> Date: Wed, 31 Mar 2021 13:10:40 +0800 Subject: [PATCH 059/144] tj --- .../\350\260\255\350\277\233/.keep" | 0 .../3.30\344\275\234\344\270\232.sql" | 75 +++++++++++++++++++ 2 files changed, 75 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\260\255\350\277\233/.keep" create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\260\255\350\277\233/3.30\344\275\234\344\270\232.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\260\255\350\277\233/.keep" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\260\255\350\277\233/.keep" new file mode 100644 index 0000000..e69de29 diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\260\255\350\277\233/3.30\344\275\234\344\270\232.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\260\255\350\277\233/3.30\344\275\234\344\270\232.sql" new file mode 100644 index 0000000..aac0742 --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\260\255\350\277\233/3.30\344\275\234\344\270\232.sql" @@ -0,0 +1,75 @@ +use master +go +create database student +on +( + name='student', + filename='E:\sql\student.mdf', + size=10MB, + maxsize=50MB, + filegrowth=10% +) +log on +( + name='student_log', + filename='E:\sql\student_log.ldf', + size=10MB, + maxsize=50MB, + filegrowth=10% +) +go +use student +go +create table stuInfo +( + stuID int primary key, + stuName varchar(20), + stuAge varchar(2), + stuSex varchar(1) check(stuSex=1 or stuSex=0), + time varchar(50) +) +create table courseInfo +( + courseID int primary key, + courseName varchar(20), + courseMarks char(1) +) +create table scoreInfo +( + scoreID int primary key, + stuID int references stuInfo(stuID), + courseID int references courseInfo(courseID), + score int +) +insert into stuInfo (stuID,stuName,stuAge,stuSex,time) +values(1,'Tom',19,1,null),(2,'Jack',20,0,null),(3,'Rose',21,1,null),(4,'Lulu',19,1,null),(5,'Lili',21,0,null),(6,'abc',20,1,'2007-01-07 01:11:36.590') + +insert into courseInfo(courseID,courseName,courseMarks) +values (1,'JavaBase',4),(2,'HTML',2),(3,'JavaScri',2),(4,'SqlBase',2) + +insert into scoreInfo(scoreID,stuID,courseID,score) +values (1,1,1,80),(2,1,2,85),(3,1,4,50),(4,2,1,75),(5,2,3,45),(6,2,4,75),(7,3,1,45),(8,4,2,75),(9,4,2,75),(10,4,3,90),(11,4,4,45) + +select * from stuInfo +select * from courseInfo +select * from scoreInfo +--1.查询出每个学生所选修的课程的数量和所选修的课程的考试的平均分 +select stuName,count(*)课程数量,round (AVG(cast(score as float)),1)平均分 from scoreInfo join stuInfo on stuInfo.stuID = stuInfo.stuID group by stuName +--2.查询出每门课程的选修的学生的个数和学生考试的总分 +select courseName count(*),sum(score) from courseInfo join scoreInfo on courseInfo.courseID = scoreInfo.courseID group by courseName +--3.查询出性别一样并且年龄一样的学生的信息 +select * from stuInfo s1 join stuInfo s2 on s1.stuID = s2.stuID and s1.stuSex= s2.stuSex and s1.stuAge= s2.stuAge +--4.查询出学分一样的课程信息 +select * from courseInfo c1 join courseInfo c2 on c1.courseMarks=c2.courseMarks +--5.查询出参加了考试的学生的学号,姓名,课程号和分数 +select stuInfo.stuID,stuName,courseID,score from stuInfo join scoreInfo on stuInfo.stuID=stuInfo.stuID +--6.查询出参加了考试的学生的学号,课程号,课程名,课程学分和分数 +select stuInfo.stuID,stuName,score from stuInfo join scoreInfo on stuInfo.stuID=stuInfo.stuID join courseInfo on courseInfo.courseID=courseInfo.courseID +--7.查询出没有参加考试的学生的学号和姓名 +select stuInfo.stuID,stuName from stuInfo join scoreInfo on stuInfo.stuID not in (stuInfo.stuID) +--8.查询出是周六周天来报到的学生 +select stuInfo.stuName from stuInfo where datepart (weekday,getdate())>5 +--9.查询出姓名中有字母a的学生的信息 +select * from stuInfo where stuName like ('%a%') +--10.查询出选修了2门课程以上的并且考试平均分在70以上的学生的学号和考试平均分以及选修课程的数量 +select stuID,count(courseID)选修课程数量,AVG(score)平均分 from scoreInfo group by stuID having COUNT(courseID) >2 and AVG(score) >70 -- Gitee From 63bc0fd277f5a95f5fc342ecc38f51a70f7c8981 Mon Sep 17 00:00:00 2001 From: nanyanbeimu <921737147@qq.com> Date: Wed, 31 Mar 2021 13:16:09 +0800 Subject: [PATCH 060/144] ZJQ --- .../.keep" | 0 .../3.30\344\275\234\344\270\232.sql" | 75 +++++++++++++++++++ 2 files changed, 75 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\265\265\345\256\266\351\275\220/.keep" create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\265\265\345\256\266\351\275\220/3.30\344\275\234\344\270\232.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\265\265\345\256\266\351\275\220/.keep" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\265\265\345\256\266\351\275\220/.keep" new file mode 100644 index 0000000..e69de29 diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\265\265\345\256\266\351\275\220/3.30\344\275\234\344\270\232.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\265\265\345\256\266\351\275\220/3.30\344\275\234\344\270\232.sql" new file mode 100644 index 0000000..aac0742 --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\265\265\345\256\266\351\275\220/3.30\344\275\234\344\270\232.sql" @@ -0,0 +1,75 @@ +use master +go +create database student +on +( + name='student', + filename='E:\sql\student.mdf', + size=10MB, + maxsize=50MB, + filegrowth=10% +) +log on +( + name='student_log', + filename='E:\sql\student_log.ldf', + size=10MB, + maxsize=50MB, + filegrowth=10% +) +go +use student +go +create table stuInfo +( + stuID int primary key, + stuName varchar(20), + stuAge varchar(2), + stuSex varchar(1) check(stuSex=1 or stuSex=0), + time varchar(50) +) +create table courseInfo +( + courseID int primary key, + courseName varchar(20), + courseMarks char(1) +) +create table scoreInfo +( + scoreID int primary key, + stuID int references stuInfo(stuID), + courseID int references courseInfo(courseID), + score int +) +insert into stuInfo (stuID,stuName,stuAge,stuSex,time) +values(1,'Tom',19,1,null),(2,'Jack',20,0,null),(3,'Rose',21,1,null),(4,'Lulu',19,1,null),(5,'Lili',21,0,null),(6,'abc',20,1,'2007-01-07 01:11:36.590') + +insert into courseInfo(courseID,courseName,courseMarks) +values (1,'JavaBase',4),(2,'HTML',2),(3,'JavaScri',2),(4,'SqlBase',2) + +insert into scoreInfo(scoreID,stuID,courseID,score) +values (1,1,1,80),(2,1,2,85),(3,1,4,50),(4,2,1,75),(5,2,3,45),(6,2,4,75),(7,3,1,45),(8,4,2,75),(9,4,2,75),(10,4,3,90),(11,4,4,45) + +select * from stuInfo +select * from courseInfo +select * from scoreInfo +--1.查询出每个学生所选修的课程的数量和所选修的课程的考试的平均分 +select stuName,count(*)课程数量,round (AVG(cast(score as float)),1)平均分 from scoreInfo join stuInfo on stuInfo.stuID = stuInfo.stuID group by stuName +--2.查询出每门课程的选修的学生的个数和学生考试的总分 +select courseName count(*),sum(score) from courseInfo join scoreInfo on courseInfo.courseID = scoreInfo.courseID group by courseName +--3.查询出性别一样并且年龄一样的学生的信息 +select * from stuInfo s1 join stuInfo s2 on s1.stuID = s2.stuID and s1.stuSex= s2.stuSex and s1.stuAge= s2.stuAge +--4.查询出学分一样的课程信息 +select * from courseInfo c1 join courseInfo c2 on c1.courseMarks=c2.courseMarks +--5.查询出参加了考试的学生的学号,姓名,课程号和分数 +select stuInfo.stuID,stuName,courseID,score from stuInfo join scoreInfo on stuInfo.stuID=stuInfo.stuID +--6.查询出参加了考试的学生的学号,课程号,课程名,课程学分和分数 +select stuInfo.stuID,stuName,score from stuInfo join scoreInfo on stuInfo.stuID=stuInfo.stuID join courseInfo on courseInfo.courseID=courseInfo.courseID +--7.查询出没有参加考试的学生的学号和姓名 +select stuInfo.stuID,stuName from stuInfo join scoreInfo on stuInfo.stuID not in (stuInfo.stuID) +--8.查询出是周六周天来报到的学生 +select stuInfo.stuName from stuInfo where datepart (weekday,getdate())>5 +--9.查询出姓名中有字母a的学生的信息 +select * from stuInfo where stuName like ('%a%') +--10.查询出选修了2门课程以上的并且考试平均分在70以上的学生的学号和考试平均分以及选修课程的数量 +select stuID,count(courseID)选修课程数量,AVG(score)平均分 from scoreInfo group by stuID having COUNT(courseID) >2 and AVG(score) >70 -- Gitee From 1a12a7ac034be9828e85f1aa47020149f9dea8b8 Mon Sep 17 00:00:00 2001 From: zcling Date: Wed, 31 Mar 2021 13:16:56 +0800 Subject: [PATCH 061/144] first commit --- .../SQLQuery1.sql" | 71 +++++++++++++++++++ 1 file changed, 71 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\274\240\346\230\214\351\276\231/SQLQuery1.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\274\240\346\230\214\351\276\231/SQLQuery1.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\274\240\346\230\214\351\276\231/SQLQuery1.sql" new file mode 100644 index 0000000..0553bd5 --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\274\240\346\230\214\351\276\231/SQLQuery1.sql" @@ -0,0 +1,71 @@ +use master +go +create database Students +on +( + name='Students', + filename='D:\SQLwork\Students.mdf', + Size=5MB, + maxsize=50MB, + filegrowth=10% + ) + log on +( +name='Students_log', + filename='D:\SQLwork\Students_log.ldf', + Size=5MB, + maxsize=50MB, + filegrowth=10% +) +go +use Students +create table stuInfo +( +stuID int primary key identity(1,1), +stuName nvarchar(10) , +stuAge int , +stuSex nvarchar(2) , +stuTime datetime , +) +create table courseInfo +( +courseID int primary key identity(1,1), +courseName nvarchar(10) not null, +courseMarks int not null, +) +create table scoreInfo +( +scoreID int identity(1,1), +stuID int references stuInfo(stuID), +courseID int references courseInfo(courseID), +score int not null, +) + +insert into stuInfo(stuName,stuAge,stuSex,stuTime) values ('TOM',19,1,null),('Jack',20,0,null),('Rose',21,1,null),('Lulu',19,1,null),('Lili',21,0,null),('abc',20,1,'2007-01-07 01:11:36.590') +insert into courseInfo(courseName,courseMarks) values ('JavaBase',4),('HTML',2),('JavaScript',2),('SqlBase',2) +insert into scoreInfo(stuID ,courseID,score)values(1,1,80),(1,2,85),(1,4,50),(2,1,75),(2,3,45),(2,4,75),(3,1,45),(4,1,95),(4,2,75),(4,3,90),(4,4,45) +select * from stuInfo +select * from courseInfo +select * from scoreInfo +--有如图所示的三张表结构,学生信息表(stuInfo),课程信息表(courseInfo),分数信息表(scoreInfo) +--题目: +--1.查询出每个学生所选修的课程的数量和所选修的课程的考试的平均分 +select F.stuID,stuName, count (courseMarks)课程的数量,avg (score)课程的考试的平均分 from stuInfo F,courseInfo C,scoreInfo O where F.stuID=O.stuID AND C.courseID=O.courseID group by stuName ,F.stuID +--2.查询出每门课程的选修的学生的个数和学生考试的总分 +select C.courseID, count (F.stuID)选修的学生的个数,SUM (score)课程的考试的总分 from stuInfo F,courseInfo C,scoreInfo O where F.stuID=O.stuID AND C.courseID=O.courseID group by C.courseID +--3.查询出性别一样并且年龄一样的学生的信息 +select A.stuID,A.stuName,A.stuSex,B.stuAge FROM stuInfo A inner join stuInfo B on A.stuID<>B.stuID and A.stuSex=B.stuSex and A.stuAge=B.stuAge +--4.查询出学分一样的课程信息 +select distinct B.courseID,B.courseName,B.courseMarks from courseInfo A inner join courseInfo B on A.courseID<>B.courseID and A.courseMarks=B.courseMarks +--5.查询出参加了考试的学生的学号,姓名,课程号和分数 +select F.stuID 学号,stuName 姓名,C.courseID 课程号,score 分数 from stuInfo F,courseInfo C,scoreInfo O where F.stuID=O.stuID AND C.courseID=O.courseID +--6.查询出参加了考试的学生的学号,课程号,课程名,课程学分和分数 +select F.stuID 学号,stuName 姓名,C.courseID 课程号,courseName 课程名,courseMarks 课程学分,score 分数 from stuInfo F,courseInfo C,scoreInfo O where F.stuID=O.stuID AND C.courseID=O.courseID +--7.查询出没有参加考试的学生的学号和姓名 +select S.StuID,StuName from Stuinfo S left join scoreInfo I on S.StuID = I.stuID where score is NULL +--8 .查询出是周六周天来报到的学生 +select * from stuInfo where stuTime='星期六' or stuTime='星期天' +--9.查询出姓名中有字母a的学生的信息 +select * from stuInfo where stuName like '%a%' +--10.查询出选修了2门课程以上的并且考试平均分在70以上的学生的学号和考试平均分以及选修课程的数量 +select S.stuID,avg(score),count(*) from scoreInfo S inner join stuInfo I on I.stuID = S.stuID inner join courseInfo C on C.courseID = S.courseID group by S.stuID having count(*)>2 and avg(score)>70 \ No newline at end of file -- Gitee From 07a086ccb8493a9b1d21cfd77d7e694223296baa Mon Sep 17 00:00:00 2001 From: Sauscat <849182611@qq.com> Date: Wed, 31 Mar 2021 13:29:12 +0800 Subject: [PATCH 062/144] Grey --- .../SQLQuery2.sql" | 59 +++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\213\217\346\231\272\351\276\231/SQLQuery2.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\213\217\346\231\272\351\276\231/SQLQuery2.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\213\217\346\231\272\351\276\231/SQLQuery2.sql" new file mode 100644 index 0000000..fc6a449 --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\213\217\346\231\272\351\276\231/SQLQuery2.sql" @@ -0,0 +1,59 @@ +use master + +create database Srudents +go +create table stuinfo +( +stuID int primary key identity, +stuName varchar(10), +stuAge int , +StuSex int check(stuSex=1 or stuSex=0), +time date +) +create table courseInfo +( +courseID int primary key identity, +courseName varchar(10), +courseMarks int +) +create table scoreInfo +( +scoreID int primary key identity, +stuID int references stuinfo(stuID), +courseID int references courseinfo(courseID), +score int +) +insert into + stuinfo(stuName,stuAge,StuSex) +values +('Tom',19,1), +('Jack',20,0), +('Rose',21,1), +('Lulu',19,1), +('Lili',21,0), +('abc',20,1) +update stuinfo set time='2007-01-07 01:11:36.590'where stuID=6 +insert into +courseInfo(courseName,courseMarks) +values +('JavaBase',4), +('HTML',2), +('JavaScript',2), +('SqkBase',2) +insert into +scoreInfo(stuID,courseID,score) +values +(1,1,80),(1,2,85), +(1,4,50),(2,1,75), +(2,3,45),(2,4,75), +(3,1,45),(4,1,95), +(4,2,75),(4,3,90), +(4,4,45) +select stuID,count(courseID) 所修课程数量,avg(score) 所修课程平均分 from scoreInfo group by stuID +select courseID 课程,count(stuID) 选修课程人数,sum(score) 总分 from scoreInfo group by courseID +select * from stuinfo a where EXISTS (select stuAge,StuSex,count(stuAge),count(StuSex) from stuinfo b where a.stuAge=b.stuAge and a.StuSex=b.StuSex group by stuAge,StuSex having count(stuAge)>1 and count(StuSex)>1) +select * from courseInfo where courseMarks in ( select courseMarks from courseInfo group by courseMarks having count(courseMarks)>1) +select scoreInfo.stuID,stuinfo.stuName, courseID,score from scoreInfo inner join stuinfo on stuinfo.stuID=scoreInfo.stuID +select scoreInfo.stuID,courseInfo.courseID,courseName,courseMarks,score from scoreInfo inner join courseInfo on courseInfo.courseID=scoreInfo.courseID +select * from stuinfo where stuName like '%a%' +select stuID, avg(score) 平均分,count(courseID) 课程数 from scoreInfo group by stuID having avg(score)>70 and count(courseID)>2 \ No newline at end of file -- Gitee From d7d0cc1e99e662b05732a0d6e80e475eb1e093f0 Mon Sep 17 00:00:00 2001 From: qingliuma <2824359150@qq.com> Date: Wed, 31 Mar 2021 13:29:22 +0800 Subject: [PATCH 063/144] =?UTF-8?q?=E6=96=B0=E5=BB=BA=20=E7=A8=8B=E6=96=87?= =?UTF-8?q?=E5=90=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\347\250\213\346\226\207\345\220\233/.keep" | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\250\213\346\226\207\345\220\233/.keep" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\250\213\346\226\207\345\220\233/.keep" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\250\213\346\226\207\345\220\233/.keep" new file mode 100644 index 0000000..e69de29 -- Gitee From 9dae5592c2f25eed05402d768ce1f416039e32dc Mon Sep 17 00:00:00 2001 From: qingliuma <2824359150@qq.com> Date: Wed, 31 Mar 2021 13:29:43 +0800 Subject: [PATCH 064/144] 11 --- .../SQLQuery2.sql" | 79 +++++++++++++++++++ 1 file changed, 79 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\250\213\346\226\207\345\220\233/SQLQuery2.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\250\213\346\226\207\345\220\233/SQLQuery2.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\250\213\346\226\207\345\220\233/SQLQuery2.sql" new file mode 100644 index 0000000..0a39b3b --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\250\213\346\226\207\345\220\233/SQLQuery2.sql" @@ -0,0 +1,79 @@ +create database stu +go +use stu +go + +create table stuInfo +( + stuID int primary key identity(1,1), + stuName nvarchar(10) not null, + stuAge char(3) not null, + stusex char(2) not null, + time date +) +create table courseInfo +( + courseID int primary key identity(1,1), + courseName nvarchar(10) not null, + courseMarks int not null +) +create table scoreInfo +( + scoreID int primary key identity(1,1), + stuID int references stuInfo(stuID) not null, + courseID int references courseInfo(courseID) not null, + score int , +) +go + +insert into stuInfo values +('Tom',19,1,null),('Jack',20,0,null), +('Rose',21,1,null),('Lulu',19,1,null), +('Lili',21,0,null),('abc',20,1,'2007-01-07 01:11:36.590') + +insert into courseInfo values +('JavaBase',4),('HTML',2), +('JavaScript',2),('SqlBase',2) + +insert into scoreInfo values +(1,1,80),(1,2,85),(1,4,50),(2,1,75),(2,3,45), +(2,4,75),(3,1,45),(4,1,95),(4,2,75),(4,3,90), +(4,4,45) +go +--有如图所示的三张表结构,学生信息表(stuInfo),课程信息表(courseInfo),分数信息表(scoreInfo) +select * from stuInfo +select * from courseInfo +select * from scoreInfo +--题目: +--1.查询出每个学生所选修的课程的数量和所选修的课程的考试的平均分 +select s.stuID,stuName, count(courseName) 课程数量 ,avg(score) 平均分数 from scoreInfo s +inner join stuInfo stu on s.stuID = stu.stuID +inner join courseInfo c on s.courseID=c.courseID group by s.stuID ,stuName +--2.查询出 每门课程的选修的学生的个数 和 学生考试的总分 +select c.courseID,courseName,count(s.stuID) 学生的个数,sum(score) 总分 from scoreInfo s +inner join stuInfo stu on s.stuID=stu.stuID +inner join courseInfo c on s.courseID=c.courseID group by c.courseID,courseName +--3.查询出性别一样并且年龄一样的学生的信息 +select * from stuInfo s1 join stuInfo s2 on s1.stuName<>s2.stuName and s1.stuAge=s2.stuAge and s1.stusex=s2.stusex +--另一种做法select * from stuInfo t where (select COUNT(*) from stuInfo where stuAge=t.stuAge and stuSex=t.stuSex)>1 +--4.查询出学分一样的课程信息 +select * from courseInfo c1 join courseInfo c2 on c1.courseID!=c2.courseID and c1.courseMarks=c2.courseMarks +--5.查询出参加了考试的 学生的学号,姓名,课程号 和 分数 +select s.stuID,stuName,c.courseID,score from scoreInfo s +inner join stuInfo stu on s.stuID=stu.stuID +inner join courseInfo c on s.courseID=c.courseID +--6.查询出参加了考试的学生的学号,课程号,课程名,课程学分和分数 +select s.stuID,stuName,c.courseID,courseMarks,score from scoreInfo s +inner join stuInfo stu on s.stuID=stu.stuID +inner join courseInfo c on s.courseID=c.courseID +--7.查询出没有参加考试的学生的学号和姓名 + select * from stuInfo where stuID not in (select stuID from scoreInfo) + --另一种做法select * from stuInfo left join scoreInfo on stuInfo.stuID = scoreInfo.stuID where score is null +--8.查询出是周六周天来报到的学生 + +--9.查询出姓名中有字母a的学生的信息 +select * from stuInfo where stuName like '%a%' +--10.查询出选修了2门课程以上的并且考试平均分在70以上的 学生的学号 和 考试平均分 以及 选修课程的数量 +select s.stuID,stuName,avg(score)平均分,count(c.courseID)课程数 from scoreInfo s +inner join stuInfo stu on s.stuID=stu.stuID +inner join courseInfo c on s.courseID=c.courseID group by s.stuID,stuName having avg(score)>70 \ No newline at end of file -- Gitee From 8e0ec555ccd6e3587322c6b71f8732c430e9a9bf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=87=8C=E6=98=82?= <8335240+dliyar@user.noreply.gitee.com> Date: Wed, 31 Mar 2021 13:45:48 +0800 Subject: [PATCH 065/144] =?UTF-8?q?=E8=BF=AA=E5=8A=9B=E4=BA=9A=E5=B0=94?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../1.txt" | 73 +++++++++++++++++++ 1 file changed, 73 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/1.txt" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/1.txt" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/1.txt" new file mode 100644 index 0000000..2b307b2 --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/1.txt" @@ -0,0 +1,73 @@ +create database aji +go +use aji +go + +create table stuInfo +( + stuID int primary key identity(1,1), + stuName nvarchar(10) not null, + stuAge char(3) not null, + stusex char(2) not null, + time date +) +create table courseInfo +( + courseID int primary key identity(1,1), + courseName nvarchar(10) not null, + courseMarks int not null +) +create table scoreInfo +( + scoreID int primary key identity(1,1), + stuID int references stuInfo(stuID) not null, + courseID int references courseInfo(courseID) not null, + score int , +) +go + +insert into stuInfo values('Tom',19,1,null),('Jack',20,0,null), +('Rose',21,1,null),('Lulu',19,1,null),('Lili',21,0,null),('abc',20,1,'2007-01-07 01:11:36.590') + +insert into courseInfo values('JavaBase',4),('HTML',2),('JavaScript',2),('SqlBase',2) + +insert into scoreInfo values(1,1,80),(1,2,85),(1,4,50),(2,1,75),(2,3,45), +(2,4,75),(3,1,45),(4,1,95),(4,2,75),(4,3,90),(4,4,45) +go +--鏈夊鍥炬墍绀虹殑涓夊紶琛ㄧ粨鏋勶紝瀛︾敓淇℃伅琛紙stuInfo锛夛紝璇剧▼淇℃伅琛紙courseInfo锛,鍒嗘暟淇℃伅琛紙scoreInfo锛 +select * from stuInfo +select * from courseInfo +select * from scoreInfo +--棰樼洰锛 +--1.鏌ヨ鍑烘瘡涓鐢熸墍閫変慨鐨勮绋嬬殑鏁伴噺鍜屾墍閫変慨鐨勮绋嬬殑鑰冭瘯鐨勫钩鍧囧垎 +select s.stuID,stuName, count(courseName) 璇剧▼鏁伴噺 ,avg(score) 骞冲潎鍒嗘暟 from scoreInfo s +inner join stuInfo stu on s.stuID = stu.stuID +inner join courseInfo c on s.courseID=c.courseID group by s.stuID ,stuName +--2.鏌ヨ鍑 姣忛棬璇剧▼鐨勯変慨鐨勫鐢熺殑涓暟 鍜 瀛︾敓鑰冭瘯鐨勬诲垎 +select c.courseID,courseName,count(s.stuID) 瀛︾敓鐨勪釜鏁,sum(score) 鎬诲垎 from scoreInfo s +inner join stuInfo stu on s.stuID=stu.stuID +inner join courseInfo c on s.courseID=c.courseID group by c.courseID,courseName +--3.鏌ヨ鍑烘у埆涓鏍峰苟涓斿勾榫勪竴鏍风殑瀛︾敓鐨勪俊鎭 +select * from stuInfo s1 join stuInfo s2 on s1.stuName<>s2.stuName and s1.stuAge=s2.stuAge and s1.stusex=s2.stusex +--鍙︿竴绉嶅仛娉晄elect * from stuInfo t where (select COUNT(*) from stuInfo where stuAge=t.stuAge and stuSex=t.stuSex)>1 +--4.鏌ヨ鍑哄鍒嗕竴鏍风殑璇剧▼淇℃伅 +select * from courseInfo c1 join courseInfo c2 on c1.courseID!=c2.courseID and c1.courseMarks=c2.courseMarks +--5.鏌ヨ鍑哄弬鍔犱簡鑰冭瘯鐨 瀛︾敓鐨勫鍙凤紝濮撳悕锛岃绋嬪彿 鍜 鍒嗘暟 +select s.stuID,stuName,c.courseID,score from scoreInfo s +inner join stuInfo stu on s.stuID=stu.stuID +inner join courseInfo c on s.courseID=c.courseID +--6.鏌ヨ鍑哄弬鍔犱簡鑰冭瘯鐨勫鐢熺殑瀛﹀彿锛岃绋嬪彿锛岃绋嬪悕锛岃绋嬪鍒嗗拰鍒嗘暟 +select s.stuID,stuName,c.courseID,courseMarks,score from scoreInfo s +inner join stuInfo stu on s.stuID=stu.stuID +inner join courseInfo c on s.courseID=c.courseID +--7.鏌ヨ鍑烘病鏈夊弬鍔犺冭瘯鐨勫鐢熺殑瀛﹀彿鍜屽鍚 + select * from stuInfo where stuID not in (select stuID from scoreInfo) + --鍙︿竴绉嶅仛娉晄elect * from stuInfo left join scoreInfo on stuInfo.stuID = scoreInfo.stuID where score is null +--8.鏌ヨ鍑烘槸鍛ㄥ叚鍛ㄥぉ鏉ユ姤鍒扮殑瀛︾敓 + +--9.鏌ヨ鍑哄鍚嶄腑鏈夊瓧姣峚鐨勫鐢熺殑淇℃伅 +select * from stuInfo where stuName like '%a%' +--10.鏌ヨ鍑洪変慨浜2闂ㄨ绋嬩互涓婄殑骞朵笖鑰冭瘯骞冲潎鍒嗗湪70浠ヤ笂鐨 瀛︾敓鐨勫鍙 鍜 鑰冭瘯骞冲潎鍒 浠ュ強 閫変慨璇剧▼鐨勬暟閲 +select s.stuID,stuName,avg(score)骞冲潎鍒,count(c.courseID)璇剧▼鏁 from scoreInfo s +inner join stuInfo stu on s.stuID=stu.stuID +inner join courseInfo c on s.courseID=c.courseID group by s.stuID,stuName having avg(score)>70 \ No newline at end of file -- Gitee From f7456b26bb9edd03e480e00c8244d969d3e72d45 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=98=8E=E6=9C=88?= <8335338+wx_15377931643ace@user.noreply.gitee.com> Date: Wed, 31 Mar 2021 13:50:07 +0800 Subject: [PATCH 066/144] SQL --- .../SQLQuery2.sql" | 103 ++++++++++++++++++ 1 file changed, 103 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/SQLQuery2.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/SQLQuery2.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/SQLQuery2.sql" new file mode 100644 index 0000000..440f9d4 --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/SQLQuery2.sql" @@ -0,0 +1,103 @@ +use master +go + +create database Student +on +( +name ='Student', +filename='D:\Student.mdf', +size=5MB, +maxsize=50MB, +filegrowth=50% +) + +log on +( +name='Student_log', +filename='D:\Student_log.ldf', +size=5MB, +maxsize=50MB, +filegrowth=50% +) +go + +use Student +go + +create table StuInfo +( + StuID int primary key identity(1,1), + StuName nvarchar(10), + StuAge int , + StuSex varchar(2) check (StuSex in (1,0) ), + Time datetime , + +) + +create table CourseInfo +( + CourseID int primary key identity(1,1), + CourseName nvarchar(20) , + CourseMarks int , + +) + +create table ScoreInfo +( + ScoreID int identity, + StuID int references StuInfo(StuID), + CourseID int references CourseInfo(CourseID), + Score int , +) + +insert into StuInfo(StuName,StuAge,StuSex,Time) values +('Tom',19,'1',null), +('Jack',20,'0',null), +('Rose',21,'1',null), +('Lulu',19,'1',null), +('Lili',21,'0',null), +('abc',20,'1','2007-01-07 01:11:36.590') + +insert into CourseInfo(CourseName,CourseMarks) values +('JavaBase',4),('HTML',2),('JAVAScript',2) + +insert into ScoreInfo(StuID,CourseID,Score) values +(1,1,80),(1,2,85),(1,4,50),(2,1,75),(2,3,45),(2,4,75),(3,1,45), +(4,1,95),(4,2,75),(4,3,90),(4,4,45) + + +Select * from StuInfo +Select * from CourseInfo +Select * from ScoreInfo +--1.查询出每个学生所选修的课程的数量和所选修的课程的考试的平均分 + +Select T.StuID,T.StuName,count(CourseName) 选课数量, avg(Score) 平均分 from ScoreInfo S inner join StuInfo T on S.StuID=T.StuID +inner join CourseInfo C on C.CourseID=S.CourseID group by T.StuID,T.StuName + +--2.查询出每门课程的选修的学生的个数和学生考试的总分 +Select C.CourseName,C.CourseID,count(*) 选修的个数,sum(Score) 考试总分 from ScoreInfo S inner join CourseInfo C on C.CourseID=S.CourseID +group by C.CourseName,C.CourseID + +--3.查询出性别一样并且年龄一样的学生的信息 +Select S.StuID,S.StuName,S.StuAge,S.StuSex from StuInfo S inner join + StuInfo T on S.StuAge=T.StuAge and S.StuSex=T.StuSex and S.StuName!=T.StuName + +--4.查询出学分一样的课程信息 +Select * from CourseInfo C,CourseInfo R where C.CourseMarks=R.CourseMarks and C.CourseID<>R.CourseID +group by C.CourseName,C.CourseID,C.CourseMarks + +--5.查询出参加了考试的学生的学号,姓名,课程号和分数 +Select S.StuID 学生学号 , StuName 姓名 , C.CourseID 课程号 , Score 分数 from ScoreInfo S inner join StuInfo I on S.StuID=I.StuID inner join +CourseInfo C on S.CourseID=C.CourseID group by S.StuID,StuName,C.CourseID,Score +--6.查询出参加了考试的学生的学号,课程号,课程名,课程学分和分数 +select S.StuID 学生学号 , C.CourseID 课程号 , CourseName 课程名, CourseMarks 课程学分 , Score 分数 from ScoreInfo S inner join StuInfo I on S.StuID=I.StuID inner join +CourseInfo C on S.CourseID=C.CourseID group by S.StuID,C.CourseID,CourseName,CourseMarks,Score +--7.查询出没有参加考试的学生的学号和姓名 +select S.StuID 学号 , StuName 姓名 from ScoreInfo I right join StuInfo S on I.StuID=S.StuID where Score is null or Score='' +--8.查询出是周六周天来报到的学生 +select * from StuInfo where datename(weekday,StuTime)='星期六' or datename(weekday,StuTime)='星期日' +--9.查询出姓名中有字母a的学生的信息 +select * from StuInfo where StuName like '%a%' or StuName like '%A%' +--10.查询出选修了2门课程以上的并且考试平均分在70以上的学生的学号和考试平均分以及选修课程的数量 +select S.StuID 学号 , COUNT(*) 课程数量 , AVG(Score) 平均分 from ScoreInfo I inner join +StuInfo S on I.StuID=S.StuID group by S.StuID having COUNT(*)>2 and AVG(Score)>70 \ No newline at end of file -- Gitee From 06d7e5db3b0e8261f0525b64e7258fb692ba0ef5 Mon Sep 17 00:00:00 2001 From: cyxer1c <1052035978@qq.com> Date: Wed, 31 Mar 2021 13:50:47 +0800 Subject: [PATCH 067/144] =?UTF-8?q?rename=20=E7=AC=AC=E5=8D=81=E4=B8=80?= =?UTF-8?q?=E6=AC=A1=E8=AF=BE=E4=BD=9C=E4=B8=9A/=E4=BD=9C=E4=B8=9A1.sql=20?= =?UTF-8?q?to=20=E7=AC=AC=E5=8D=81=E4=B8=80=E6=AC=A1=E8=AF=BE=E4=BD=9C?= =?UTF-8?q?=E4=B8=9A/=E5=8F=B6=E5=9F=8E/=E4=BD=9C=E4=B8=9A1.sql.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\344\275\234\344\270\2321.sql" | 34 +++++++++---------- 1 file changed, 17 insertions(+), 17 deletions(-) rename "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\344\275\234\344\270\2321.sql" => "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\217\266\345\237\216/\344\275\234\344\270\2321.sql" (51%) diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\344\275\234\344\270\2321.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\217\266\345\237\216/\344\275\234\344\270\2321.sql" similarity index 51% rename from "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\344\275\234\344\270\2321.sql" rename to "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\217\266\345\237\216/\344\275\234\344\270\2321.sql" index 4cbd238..9f7898e 100644 --- "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\344\275\234\344\270\2321.sql" +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\217\266\345\237\216/\344\275\234\344\270\2321.sql" @@ -10,8 +10,8 @@ create table stuInfo stuSex nvarchar(2) not null, [time] datetime ) -insert into stuInfo values('Tom',19,'男',null),('Jack',20,'女',null), -('Rose',21,'男',null),('LUlu',19,'男',null),('Lili',21,'女',null),('abc',20,'男','2007-01-07 01:11:36.590') +insert into stuInfo values('Tom',19,'鐢',null),('Jack',20,'濂',null), +('Rose',21,'鐢',null),('LUlu',19,'鐢',null),('Lili',21,'濂',null),('abc',20,'鐢','2007-01-07 01:11:36.590') create table Course ( @@ -39,40 +39,40 @@ select * from stuInfo select * from Course select * from Score ---1.查询出每个学生所选修的课程的数量和所选修的课程的考试的平均分 - select st.stuID ,stuName,COUNT(courseID) 课程数量, AVG(score) 考试平均分 from stuInfo st +--1.鏌ヨ鍑烘瘡涓鐢熸墍閫変慨鐨勮绋嬬殑鏁伴噺鍜屾墍閫変慨鐨勮绋嬬殑鑰冭瘯鐨勫钩鍧囧垎 + select st.stuID ,stuName,COUNT(courseID) 璇剧▼鏁伴噺, AVG(score) 鑰冭瘯骞冲潎鍒 from stuInfo st inner join Score s on st.stuID=s.stuID group by st.stuID,stuName ---2.查询出每门课程的选修的学生的个数和学生考试的总分 - select st.stuID ,stuName,COUNT(courseID) 课程数量, sum(score) 考试总分 from stuInfo st +--2.鏌ヨ鍑烘瘡闂ㄨ绋嬬殑閫変慨鐨勫鐢熺殑涓暟鍜屽鐢熻冭瘯鐨勬诲垎 + select st.stuID ,stuName,COUNT(courseID) 璇剧▼鏁伴噺, sum(score) 鑰冭瘯鎬诲垎 from stuInfo st inner join Score s on st.stuID=s.stuID group by st.stuID,stuName ---3.查询出性别一样并且年龄一样的学生的信息 +--3.鏌ヨ鍑烘у埆涓鏍峰苟涓斿勾榫勪竴鏍风殑瀛︾敓鐨勪俊鎭 select s1.* from stuInfo s1 inner join stuInfo s2 on (s1.stuSex=s2.stuSex) and (s1.stuAge=s2.stuSex) ---4.查询出学分一样的课程信息 +--4.鏌ヨ鍑哄鍒嗕竴鏍风殑璇剧▼淇℃伅 select distinct c1.* from Course c1 inner join Course c2 on (c1.courseID<>c2.courseID) and (c1.courseMarks=c2.courseMarks) ---5.查询出参加了考试的学生的学号,姓名,课程号和分数 - select st.stuID 学号,st.stuName 姓名, sc.courseID 课程号,sc. score 分数 from stuInfo st +--5.鏌ヨ鍑哄弬鍔犱簡鑰冭瘯鐨勫鐢熺殑瀛﹀彿锛屽鍚嶏紝璇剧▼鍙峰拰鍒嗘暟 + select st.stuID 瀛﹀彿,st.stuName 濮撳悕, sc.courseID 璇剧▼鍙,sc. score 鍒嗘暟 from stuInfo st inner join Score sc on st.stuID=sc.stuID ---6.查询出参加了考试的学生的学号,课程号,课程名,课程学分和分数 +--6.鏌ヨ鍑哄弬鍔犱簡鑰冭瘯鐨勫鐢熺殑瀛﹀彿锛岃绋嬪彿锛岃绋嬪悕锛岃绋嬪鍒嗗拰鍒嗘暟 select sc.stuID,sc.courseID,courseName,courseMarks, score from Score sc inner join Course c on sc.courseID=c.courseID ---7.查询出没有参加考试的学生的学号和姓名 +--7.鏌ヨ鍑烘病鏈夊弬鍔犺冭瘯鐨勫鐢熺殑瀛﹀彿鍜屽鍚 select st.stuID,stuName from stuInfo st left join Score sc on st.stuID=sc.stuID where sc.scoreID is null ---8.查询出是周六周天来报到的学生 - select * from stuInfo where DATENAME(DW,time)='星期六'or DATENAME(DW,time)='星期日' ---9.查询出姓名中有字母a的学生的信息 +--8.鏌ヨ鍑烘槸鍛ㄥ叚鍛ㄥぉ鏉ユ姤鍒扮殑瀛︾敓 + select * from stuInfo where DATENAME(DW,time)='鏄熸湡鍏'or DATENAME(DW,time)='鏄熸湡鏃' +--9.鏌ヨ鍑哄鍚嶄腑鏈夊瓧姣峚鐨勫鐢熺殑淇℃伅 select * from stuInfo where stuName like '%a%' ---10.查询出选修了2门课程以上的并且考试平均分在70以上的 学生的学号和考试平均分以及选修课程的数量 - select stuID '学号', avg(score) 平均分,COUNT(*) 选课数量 from score +--10.鏌ヨ鍑洪変慨浜2闂ㄨ绋嬩互涓婄殑骞朵笖鑰冭瘯骞冲潎鍒嗗湪70浠ヤ笂鐨 瀛︾敓鐨勫鍙峰拰鑰冭瘯骞冲潎鍒嗕互鍙婇変慨璇剧▼鐨勬暟閲 + select stuID '瀛﹀彿', avg(score) 骞冲潎鍒,COUNT(*) 閫夎鏁伴噺 from score group by stuID having COUNT(*)>2 and avg(score)>70 \ No newline at end of file -- Gitee From af326d15259a9481613b0c200a01bd1f424523d8 Mon Sep 17 00:00:00 2001 From: cyxer1c <1052035978@qq.com> Date: Wed, 31 Mar 2021 13:53:18 +0800 Subject: [PATCH 068/144] =?UTF-8?q?rename=20=E7=AC=AC=E5=8D=81=E4=B8=80?= =?UTF-8?q?=E6=AC=A1=E8=AF=BE=E4=BD=9C=E4=B8=9A/1.txt=20to=20=E7=AC=AC?= =?UTF-8?q?=E5=8D=81=E4=B8=80=E6=AC=A1=E8=AF=BE=E4=BD=9C=E4=B8=9A/?= =?UTF-8?q?=E8=BF=AA=E5=8A=9B=E4=BA=9A=E5=B0=94/1.txt.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\350\277\252\345\212\233\344\272\232\345\260\224/1.txt" | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/1.txt" => "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\277\252\345\212\233\344\272\232\345\260\224/1.txt" (100%) diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/1.txt" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\277\252\345\212\233\344\272\232\345\260\224/1.txt" similarity index 100% rename from "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/1.txt" rename to "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\277\252\345\212\233\344\272\232\345\260\224/1.txt" -- Gitee From efd74c794c4daa9776e04cb7d0ebdc72e7b1eb9f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=98=8E=E6=9C=88?= <8335338+wx_15377931643ace@user.noreply.gitee.com> Date: Wed, 31 Mar 2021 13:53:47 +0800 Subject: [PATCH 069/144] =?UTF-8?q?=E6=96=B0=E5=BB=BA=20=E9=98=AE=E5=BB=BA?= =?UTF-8?q?=E9=9C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\351\230\256\345\273\272\351\234\226/.keep" | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\230\256\345\273\272\351\234\226/.keep" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\230\256\345\273\272\351\234\226/.keep" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\230\256\345\273\272\351\234\226/.keep" new file mode 100644 index 0000000..e69de29 -- Gitee From aee537228b192e756b3b7769c2a94faf62d44645 Mon Sep 17 00:00:00 2001 From: cyxer1c <1052035978@qq.com> Date: Wed, 31 Mar 2021 13:54:28 +0800 Subject: [PATCH 070/144] =?UTF-8?q?rename=20=E7=AC=AC=E5=8D=81=E4=B8=80?= =?UTF-8?q?=E6=AC=A1=E8=AF=BE=E4=BD=9C=E4=B8=9A/SQLQuery2.sql=20to=20?= =?UTF-8?q?=E7=AC=AC=E5=8D=81=E4=B8=80=E6=AC=A1=E8=AF=BE=E4=BD=9C=E4=B8=9A?= =?UTF-8?q?/=E9=98=AE=E5=BB=BA=E9=9C=96/SQLQuery2.sql.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SQLQuery2.sql" | 34 +++++++++---------- 1 file changed, 17 insertions(+), 17 deletions(-) rename "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/SQLQuery2.sql" => "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\230\256\345\273\272\351\234\226/SQLQuery2.sql" (52%) diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/SQLQuery2.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\230\256\345\273\272\351\234\226/SQLQuery2.sql" similarity index 52% rename from "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/SQLQuery2.sql" rename to "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\230\256\345\273\272\351\234\226/SQLQuery2.sql" index 440f9d4..1878feb 100644 --- "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/SQLQuery2.sql" +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\230\256\345\273\272\351\234\226/SQLQuery2.sql" @@ -69,35 +69,35 @@ insert into ScoreInfo(StuID,CourseID,Score) values Select * from StuInfo Select * from CourseInfo Select * from ScoreInfo ---1.查询出每个学生所选修的课程的数量和所选修的课程的考试的平均分 +--1.鏌ヨ鍑烘瘡涓鐢熸墍閫変慨鐨勮绋嬬殑鏁伴噺鍜屾墍閫変慨鐨勮绋嬬殑鑰冭瘯鐨勫钩鍧囧垎 -Select T.StuID,T.StuName,count(CourseName) 选课数量, avg(Score) 平均分 from ScoreInfo S inner join StuInfo T on S.StuID=T.StuID +Select T.StuID,T.StuName,count(CourseName) 閫夎鏁伴噺, avg(Score) 骞冲潎鍒 from ScoreInfo S inner join StuInfo T on S.StuID=T.StuID inner join CourseInfo C on C.CourseID=S.CourseID group by T.StuID,T.StuName ---2.查询出每门课程的选修的学生的个数和学生考试的总分 -Select C.CourseName,C.CourseID,count(*) 选修的个数,sum(Score) 考试总分 from ScoreInfo S inner join CourseInfo C on C.CourseID=S.CourseID +--2.鏌ヨ鍑烘瘡闂ㄨ绋嬬殑閫変慨鐨勫鐢熺殑涓暟鍜屽鐢熻冭瘯鐨勬诲垎 +Select C.CourseName,C.CourseID,count(*) 閫変慨鐨勪釜鏁,sum(Score) 鑰冭瘯鎬诲垎 from ScoreInfo S inner join CourseInfo C on C.CourseID=S.CourseID group by C.CourseName,C.CourseID ---3.查询出性别一样并且年龄一样的学生的信息 +--3.鏌ヨ鍑烘у埆涓鏍峰苟涓斿勾榫勪竴鏍风殑瀛︾敓鐨勪俊鎭 Select S.StuID,S.StuName,S.StuAge,S.StuSex from StuInfo S inner join StuInfo T on S.StuAge=T.StuAge and S.StuSex=T.StuSex and S.StuName!=T.StuName ---4.查询出学分一样的课程信息 +--4.鏌ヨ鍑哄鍒嗕竴鏍风殑璇剧▼淇℃伅 Select * from CourseInfo C,CourseInfo R where C.CourseMarks=R.CourseMarks and C.CourseID<>R.CourseID group by C.CourseName,C.CourseID,C.CourseMarks ---5.查询出参加了考试的学生的学号,姓名,课程号和分数 -Select S.StuID 学生学号 , StuName 姓名 , C.CourseID 课程号 , Score 分数 from ScoreInfo S inner join StuInfo I on S.StuID=I.StuID inner join +--5.鏌ヨ鍑哄弬鍔犱簡鑰冭瘯鐨勫鐢熺殑瀛﹀彿锛屽鍚嶏紝璇剧▼鍙峰拰鍒嗘暟 +Select S.StuID 瀛︾敓瀛﹀彿 , StuName 濮撳悕 , C.CourseID 璇剧▼鍙 , Score 鍒嗘暟 from ScoreInfo S inner join StuInfo I on S.StuID=I.StuID inner join CourseInfo C on S.CourseID=C.CourseID group by S.StuID,StuName,C.CourseID,Score ---6.查询出参加了考试的学生的学号,课程号,课程名,课程学分和分数 -select S.StuID 学生学号 , C.CourseID 课程号 , CourseName 课程名, CourseMarks 课程学分 , Score 分数 from ScoreInfo S inner join StuInfo I on S.StuID=I.StuID inner join +--6.鏌ヨ鍑哄弬鍔犱簡鑰冭瘯鐨勫鐢熺殑瀛﹀彿锛岃绋嬪彿锛岃绋嬪悕锛岃绋嬪鍒嗗拰鍒嗘暟 +select S.StuID 瀛︾敓瀛﹀彿 , C.CourseID 璇剧▼鍙 , CourseName 璇剧▼鍚, CourseMarks 璇剧▼瀛﹀垎 , Score 鍒嗘暟 from ScoreInfo S inner join StuInfo I on S.StuID=I.StuID inner join CourseInfo C on S.CourseID=C.CourseID group by S.StuID,C.CourseID,CourseName,CourseMarks,Score ---7.查询出没有参加考试的学生的学号和姓名 -select S.StuID 学号 , StuName 姓名 from ScoreInfo I right join StuInfo S on I.StuID=S.StuID where Score is null or Score='' ---8.查询出是周六周天来报到的学生 -select * from StuInfo where datename(weekday,StuTime)='星期六' or datename(weekday,StuTime)='星期日' ---9.查询出姓名中有字母a的学生的信息 +--7.鏌ヨ鍑烘病鏈夊弬鍔犺冭瘯鐨勫鐢熺殑瀛﹀彿鍜屽鍚 +select S.StuID 瀛﹀彿 , StuName 濮撳悕 from ScoreInfo I right join StuInfo S on I.StuID=S.StuID where Score is null or Score='' +--8.鏌ヨ鍑烘槸鍛ㄥ叚鍛ㄥぉ鏉ユ姤鍒扮殑瀛︾敓 +select * from StuInfo where datename(weekday,StuTime)='鏄熸湡鍏' or datename(weekday,StuTime)='鏄熸湡鏃' +--9.鏌ヨ鍑哄鍚嶄腑鏈夊瓧姣峚鐨勫鐢熺殑淇℃伅 select * from StuInfo where StuName like '%a%' or StuName like '%A%' ---10.查询出选修了2门课程以上的并且考试平均分在70以上的学生的学号和考试平均分以及选修课程的数量 -select S.StuID 学号 , COUNT(*) 课程数量 , AVG(Score) 平均分 from ScoreInfo I inner join +--10.鏌ヨ鍑洪変慨浜2闂ㄨ绋嬩互涓婄殑骞朵笖鑰冭瘯骞冲潎鍒嗗湪70浠ヤ笂鐨勫鐢熺殑瀛﹀彿鍜岃冭瘯骞冲潎鍒嗕互鍙婇変慨璇剧▼鐨勬暟閲 +select S.StuID 瀛﹀彿 , COUNT(*) 璇剧▼鏁伴噺 , AVG(Score) 骞冲潎鍒 from ScoreInfo I inner join StuInfo S on I.StuID=S.StuID group by S.StuID having COUNT(*)>2 and AVG(Score)>70 \ No newline at end of file -- Gitee From d39c6fc55096dad4c4a0dfe1cf9a24382ee3ec6d Mon Sep 17 00:00:00 2001 From: cyxer1c <1052035978@qq.com> Date: Wed, 31 Mar 2021 13:55:39 +0800 Subject: [PATCH 071/144] =?UTF-8?q?rename=20=E7=AC=AC=E5=8D=81=E4=B8=80?= =?UTF-8?q?=E6=AC=A1=E8=AF=BE=E4=BD=9C=E4=B8=9A/SQLQuery1.sql=20to=20?= =?UTF-8?q?=E7=AC=AC=E5=8D=81=E4=B8=80=E6=AC=A1=E8=AF=BE=E4=BD=9C=E4=B8=9A?= =?UTF-8?q?/=E5=90=B4=E5=AD=9D=E6=B6=B5/SQLQuery1.sql.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SQLQuery1.sql" | 30 +++++++++---------- 1 file changed, 15 insertions(+), 15 deletions(-) rename "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/SQLQuery1.sql" => "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\220\264\345\255\235\346\266\265/SQLQuery1.sql" (62%) diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/SQLQuery1.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\220\264\345\255\235\346\266\265/SQLQuery1.sql" similarity index 62% rename from "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/SQLQuery1.sql" rename to "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\220\264\345\255\235\346\266\265/SQLQuery1.sql" index 7b35596..c74b406 100644 --- "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/SQLQuery1.sql" +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\220\264\345\255\235\346\266\265/SQLQuery1.sql" @@ -79,42 +79,42 @@ select 4,3,90 union select 4,4,45 go ---题目: ---1.查询出每个学生 所选修的课程的数量 和所选修的课程的考试的平均分 +--棰樼洰锛 +--1.鏌ヨ鍑烘瘡涓鐢 鎵閫変慨鐨勮绋嬬殑鏁伴噺 鍜屾墍閫変慨鐨勮绋嬬殑鑰冭瘯鐨勫钩鍧囧垎 -select stuName 学生姓名,count(s.stuID)课程数量,AVG(score)考试平均分 from scoreInfo s +select stuName 瀛︾敓濮撳悕,count(s.stuID)璇剧▼鏁伴噺,AVG(score)鑰冭瘯骞冲潎鍒 from scoreInfo s inner join stuInfo i on i.stuID=s.stuID group by s.stuID,stuName ---2.查询出每门课程的选修的学生的个数和学生考试的总分 +--2.鏌ヨ鍑烘瘡闂ㄨ绋嬬殑閫変慨鐨勫鐢熺殑涓暟鍜屽鐢熻冭瘯鐨勬诲垎 -select courseName 课程名称,COUNT(s.courseID)学生个数,SUM(score)考试总分 from scoreInfo s +select courseName 璇剧▼鍚嶇О,COUNT(s.courseID)瀛︾敓涓暟,SUM(score)鑰冭瘯鎬诲垎 from scoreInfo s inner join courseInfo c on c.courseID=s.courseID group by s.courseID,courseName ---3.查询出性别一样并且年龄一样的学生的信息 +--3.鏌ヨ鍑烘у埆涓鏍峰苟涓斿勾榫勪竴鏍风殑瀛︾敓鐨勪俊鎭 select * from stuInfo A left join stuInfo B on B.stuID = A.stuID where B.stuAge=A.stuAge and A.stuSex=B.stuSex ---4.查询出学分一样的课程信息 +--4.鏌ヨ鍑哄鍒嗕竴鏍风殑璇剧▼淇℃伅 select * from courseInfo A right join courseInfo B on B.courseMarks=A.courseMarks ---5.查询出参加了考试的学生的学号,姓名,课程号和分数 +--5.鏌ヨ鍑哄弬鍔犱簡鑰冭瘯鐨勫鐢熺殑瀛﹀彿锛屽鍚嶏紝璇剧▼鍙峰拰鍒嗘暟 select A.stuID,stuName,courseID,score from stuInfo A right join scoreInfo B on A.stuID=B.stuID ---6.查询出参加了考试的学生的学号,课程号,课程名,课程学分和分数 +--6.鏌ヨ鍑哄弬鍔犱簡鑰冭瘯鐨勫鐢熺殑瀛﹀彿锛岃绋嬪彿锛岃绋嬪悕锛岃绋嬪鍒嗗拰鍒嗘暟 -select A.stuID 学生学号,C.courseID 课程号,C.courseName,C.courseMarks,score from stuInfo A +select A.stuID 瀛︾敓瀛﹀彿,C.courseID 璇剧▼鍙,C.courseName,C.courseMarks,score from stuInfo A right join scoreInfo B on A.stuID=B.stuID left join courseInfo C on C.courseID=B.courseID ---7.查询出没有参加考试的学生的学号和姓名 +--7.鏌ヨ鍑烘病鏈夊弬鍔犺冭瘯鐨勫鐢熺殑瀛﹀彿鍜屽鍚 select B.stuID,B.stuName from scoreInfo A right join stuInfo B on A.stuID=B.stuID except @@ -122,15 +122,15 @@ select A.stuID,stuName from stuInfo A right join scoreInfo B on A.stuID=B.stuID left join courseInfo C on C.courseID=B.courseID ---8.查询出是周六周天来报到的学生 +--8.鏌ヨ鍑烘槸鍛ㄥ叚鍛ㄥぉ鏉ユ姤鍒扮殑瀛︾敓 ---9.查询出姓名中有字母a的学生的信息 +--9.鏌ヨ鍑哄鍚嶄腑鏈夊瓧姣峚鐨勫鐢熺殑淇℃伅 select * from stuInfo where stuName like '%a%' ---10.查询出选修了2门课程以上的并且考试平均分在70以上的学生的 学号 和 考试平均分以及 选修课程的数量 +--10.鏌ヨ鍑洪変慨浜2闂ㄨ绋嬩互涓婄殑骞朵笖鑰冭瘯骞冲潎鍒嗗湪70浠ヤ笂鐨勫鐢熺殑 瀛﹀彿 鍜 鑰冭瘯骞冲潎鍒嗕互鍙 閫変慨璇剧▼鐨勬暟閲 -select stuID 学生学号,AVG(score)考试平均分,COUNT(stuID)课程数量 from scoreInfo +select stuID 瀛︾敓瀛﹀彿,AVG(score)鑰冭瘯骞冲潎鍒,COUNT(stuID)璇剧▼鏁伴噺 from scoreInfo group by stuID having COUNT(stuID)>2 and AVG(score)>70 \ No newline at end of file -- Gitee From 0ef7ab26b8fb09afa67b670b0166217b8ce26386 Mon Sep 17 00:00:00 2001 From: huang47 <1871354263@qq.com> Date: Wed, 31 Mar 2021 15:20:04 +0800 Subject: [PATCH 072/144] =?UTF-8?q?=E9=BB=84=E5=BC=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\351\273\204\345\274\272/SQLQuery1.sql" | 108 ++++++++++++++++++ 1 file changed, 108 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\273\204\345\274\272/SQLQuery1.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\273\204\345\274\272/SQLQuery1.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\273\204\345\274\272/SQLQuery1.sql" new file mode 100644 index 0000000..c4fa82c --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\273\204\345\274\272/SQLQuery1.sql" @@ -0,0 +1,108 @@ +use master +go +create database ku +on +( + name='ku', + filename='D:\ku.mdf', + size=10MB, + maxsize=20MB, + filegrowth=10% +) +log on +( + name='ku_log', + filename='D:\ku_log.ldf', + size=5MB, + maxsize=10MB, + filegrowth=2MB +) +go +use ku +go +create table stulnfo +( + stuID int primary key identity(1,1) not null, + stuName nvarchar(10) not null, + stuAge int not null, + stuSex int not null, + time datetime +) + +create table courselnfo +( + courseID int primary key identity(1,1), + courseName nvarchar(10) not null, + courseMarks int not null +) + +create table scoreinfo +( + scoreID int primary key identity(1,1), + stuID int not null, + courseID int not null, + score int not null +) + insert into stulnfo(stuName,stuAge,stuSex,time) values + ('Tom',19,1,null), + ('jack',20,0,null), + ('Rose',21,1,null), + ('Lulu',19,1,null), + ('Lili',21,0,null), + ('abc',20,1,'2007-01-07') + + insert into courselnfo(courseName,courseMarks) values + ('JavaBase',4), + ('HTML',2), + ('JavaAcript',2), + ('SqlBase',2) + + insert into scoreinfo(stuID,courseID,score) values + (1,1,80), + (1,2,85), + (1,4,50), + (2,1,75), + (2,3,45), + (2,4,75), + (3,1,45), + (4,1,95), + (4,2,75), + (4,3,90), + (4,4,45) + select * from courselnfo + select * from scoreinfo + select * from stulnfo + --1.查询出每个学生所选修的课程的数量和所选修的课程的考试的平均分 + select i.stuName ,count(*)数量 ,avg(score)平均分 from scoreInfo s JOIN stuInfo i on i. stuID= s .stuID group by i.stuName + +--2.查询出每门课程的选修的学生的个数和学生考试的总分 +select c.courseName, count(*) '选修的学生个数', sum(score) '总分'from courseInfo c join scoreInfo s on c.courseID = s.courseID group by c.courseName + +--3.查询出性别一样并且年龄一样的学生的信息 +select s1.* from stuInfo s1 join stuInfo s2 on s1.stuName<>s2.stuName and s1. stuSex=s2.stuSex and s1.stuAge =s2.stuAge + +--4.查询出学分一样的课程信息 +select distinct c1.* from courseInfo c1 join courseInfo c2 on (c1.courseID <> c2.courseID) and (c1.courseMarks = c2.courseMarks ) + + +--5.查询出参加了考试的学生的学号,姓名,课程号和分数 +select st.stuID, st.stuName, s.courseID, s.score from scoreInfo s joinstuInfo st on s.stuID = st.stuID + +--6.查询出参加了考试的学生的学号,课程号,课程名,课程学分和分数 +select s.stuID, s.courseID, c.courseName, c.courseMarks , s.score fromscoreInfo s join courseInfo c on c.courseID = s.courseID + +--7.查询出没有参加考试的学生的学号和姓名 +select st.stuID, st.stuName from stuInfo st left join scoreInfo sc on sc.stuID = st.stuID where sc.scoreID is null + +--8.查询出是周六周天来报到的学生 +select * from stuInfo where DATENAME(dw, time) = '星期六' or DATENAME(dw, time) = '星期日' + +--9.查询出姓名中有字母a的学生的信息 +select * from stuInfo where stuName like '%a%' + +--10.查询出选修了2门课程以上的并且考试平均分在70以上的学生的学号和考试平均分以及选修课程的数量 +select stuID '学号', round(avg(cast(score as float)), 1) '平均成绩', count(*) '选课数量' from scoreInfo group by stuID having count(*) > 2 and round(avg(cast(score as float)), 1) > 70 + + + + -- Gitee From 9415b293e397f528ad2beb59bd6e334ee32ee8f4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E6=80=9D=E9=94=90?= <812046875@qq.com> Date: Wed, 31 Mar 2021 15:23:00 +0800 Subject: [PATCH 073/144] =?UTF-8?q?=E6=96=B0=E5=BB=BA=20=E9=99=88=E6=80=9D?= =?UTF-8?q?=E9=94=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\351\231\210\346\200\235\351\224\220/.keep" | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\351\231\210\346\200\235\351\224\220/.keep" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\351\231\210\346\200\235\351\224\220/.keep" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\351\231\210\346\200\235\351\224\220/.keep" new file mode 100644 index 0000000..e69de29 -- Gitee From d68f85bdaec201163b7d73ae96454ddf6faf8899 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E6=80=9D=E9=94=90?= <812046875@qq.com> Date: Wed, 31 Mar 2021 15:24:25 +0800 Subject: [PATCH 074/144] =?UTF-8?q?=E9=99=88=E6=80=9D=E9=94=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SQLQuery2.sql" | 211 ++++++++++++++++++ 1 file changed, 211 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\351\231\210\346\200\235\351\224\220/SQLQuery2.sql" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\351\231\210\346\200\235\351\224\220/SQLQuery2.sql" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\351\231\210\346\200\235\351\224\220/SQLQuery2.sql" new file mode 100644 index 0000000..9b1a9f2 --- /dev/null +++ "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\351\231\210\346\200\235\351\224\220/SQLQuery2.sql" @@ -0,0 +1,211 @@ +use master +go + +if exists(select * from sys.databases where name = 'cybercafe_charge_sys') + drop database cybercafe_charge_sys +go + +create database cybercafe_charge_sys +go + +use cybercafe_charge_sys +go + +create table tbl_card +( + id varchar(10) primary key, + [passWord] nvarchar(20) check(len(passWord) between 2 and 20), + balance decimal(10,1), + userName nvarchar(20) +) +go + +create table tbl_computer +( + id varchar(10) primary key, + onUse int check(onUse in (0, 1)), + note text +) +go + +create table tbl_record +( + id varchar(10) primary key, + cardId varchar(10) references tbl_card(id), + ComputerId varchar(10) references tbl_computer(id), + beginTime smalldatetime, + endTime smalldatetime, + fee decimal(10,1) +) +go + +insert into tbl_card values +('0023_ABC', '555', 98, '张军'), +('0025_bbd', 'abe', 300, '朱俊'), +('0036_CCD', '何柳', 100, '何柳'), +('0045_YGR', '0045_YGR', 58, '证验'), +('0078_RJV', '55885fg', 600, '校庆'), +('0089_EDE', 'zhang', 134, '张峻') +go + +insert into tbl_computer values +('02', 0, '25555'), +('03', 1, '55555'), +('04', 0, '66666'), +('05', 1, '88888'), +('06', 0, '688878'), +('B01', 0, '558558') +go + +insert into tbl_record values +('23', '0078_RJV', 'B01', '2007-07-15 19:00:00', '2007-07-15 21:00:00', 20), +('34', '0025_bbd', '02', '2006-12-25 18:00:00', '2006-12-25 22:00:00', 23), +('45', '0023_ABC', '03', '2006-12-23 15:26:00', '2006-12-23 22:55:00', 50), +('46', '0023_ABC', '03', '2006-12-22 15:26:00', '2006-12-22 22:55:00', 6), +('47', '0023_ABC', '03', '2006-12-23 15:26:00', '2006-12-23 22:55:00', 50), +('48', '0023_ABC', '03', '2007-01-06 15:26:00', '2007-01-06 22:55:00', 6), +('55', '0023_ABC', '03', '2006-07-21 15:26:00', '2006-07-21 22:55:00', 50), +('64', '0045_YGR', '04', '2006-12-24 18:00:00', '2006-12-24 22:00:00', 30), +('65', '0025_bbd', '02', '2006-12-28 18:00:00', '2006-12-28 22:00:00', 23), +('98', '0025_bbd', '02', '2006-12-26 18:00:00', '2006-12-26 22:00:00', 23) +go + +--1. 查询出用户名为'张军'的上网卡的上网记录,要求显示卡号,用户名,机器编号、开始时间、结束时间,和消费金额,并按消费金额降序排列 +select + tc.id '卡号', tc.userName '用户名', tr.ComputerId '机器编号', tr.beginTime '开始时间', tr.endTime '结束时间', tr.fee '消费金额' +from + tbl_card tc +join + tbl_record tr +on + tc.id = tr.cardId +where + tc.userName = '张军' +order by + tr.fee desc + +--2. 查询出每台机器上的上网次数和消费的总金额 +select + ComputerId, count(*) '上网次数', sum(fee) '消费总金额' +from + tbl_record +group by + ComputerId + +--3. 查询出所有已经使用过的上网卡的消费总金额 +select + cardId, sum(fee) '消费总金额' +from + tbl_record +group by + cardId + +--4. 查询出从未消费过的上网卡的卡号和用户名 +select + tc.id, tc.userName +from + tbl_card tc +left join + tbl_record tr +on + tr.cardId = tc.id +where + tr.id is null + +--5. 将密码与用户名一样的上网卡信息查询出来 +select + * +from + tbl_card t1 +join + tbl_card t2 +on + (t1.id = t2.id) and (t1.[passWord] = t2.userName) + + +--6. 查询出使用次数最多的机器号和使用次数 +-- 1 +select + ComputerId, count(*) '使用次数' +from + tbl_record +group by + ComputerId +having + count(*) = (select max(t.使用次数) from (select ComputerId, count(*) '使用次数' from tbl_record group by ComputerId) t) + +--2 +--create view v_count +--as +--select +-- ComputerId, count(*) '使用次数' +--from +-- tbl_record +--group by +-- ComputerId +--go + +--select +-- * +--from +-- v_count v1 +--where +-- v1.使用次数 = (select max(使用次数) from v_count) + +--7. 查询出卡号是以'ABC'结尾的卡号,用户名,上网的机器号和消费金额 +select + tc.id, tc.userName, tr.ComputerId, tr.fee +from + tbl_record tr +join + tbl_card tc +on + tr.cardId = tc.id +where + tr.cardId like '%ABC' + + +--8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select + tc.id, tc.userName, tr.ComputerId, tr.beginTime, tr.endTime, tr.fee +from + tbl_record tr +join + tbl_card tc +on + tr.cardId = tc.id +where + DATENAME(dw, tr.beginTime) in ('星期六','星期日') + +--9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select + tc.id, tc.userName, tr.ComputerId, tr.beginTime, tr.endTime, tr.fee +from + tbl_record tr +join + tbl_card tc +on + tr.cardId = tc.id +where + DATEDIFF(HH, tr.beginTime, tr.endTime) > 12 + +--10. 查询除消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select + tc.id, tc.userName, tr.ComputerId, tr.beginTime, tr.endTime, tr.fee +from + tbl_record tr +join + tbl_card tc +on + tr.cardId = tc.id +where + tr.fee in ( + select + distinct top 3 fee + from + tbl_record + order by + fee desc + ) +order by + tr.fee desc \ No newline at end of file -- Gitee From 2ef5cbdc3729a78f88515b3f8aa39282517d37a9 Mon Sep 17 00:00:00 2001 From: cdy9946 Date: Wed, 31 Mar 2021 16:34:48 +0800 Subject: [PATCH 075/144] fs --- .../SQLQuery1.sql" | 7 +- .../SQLQuery2.sql" | 89 +++++++++++++++++++ 2 files changed, 93 insertions(+), 3 deletions(-) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\347\277\201\346\231\266\350\276\211/SQLQuery2.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\277\201\346\231\266\350\276\211/SQLQuery1.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\277\201\346\231\266\350\276\211/SQLQuery1.sql" index 24319cd..f77e575 100644 --- "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\277\201\346\231\266\350\276\211/SQLQuery1.sql" +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\277\201\346\231\266\350\276\211/SQLQuery1.sql" @@ -78,10 +78,10 @@ inner join score o on s.stuID=o.stuID inner join course c on c.courseID=o.courseID group by courseName --3.查询出性别一样并且年龄一样的学生的信息 -select * from stulnfo s1 join stulnfo s2 on s1.stuName<>s2.stuName and s1.stuSex=s2.stuSex and s1.stuAge=s2.stuAge +select s1.* from stulnfo s1 join stulnfo s2 on s1.stuID<>s2.stuID and s1.stuSex=s2.stuSex and s1.stuAge=s2.stuAge --4.查询出学分一样的课程信息 - select * from course c1 join course c2 on c1.courseName<>c2.courseName and c1.courseMarks=c2.courseMarks + select distinct c1.* from course c1 join course c2 on c1.courseName<>c2.courseName and c1.courseMarks=c2.courseMarks --5.查询出参加了考试的学生的学号,姓名,课程号和分数 select s.stuID,stuName,c.courseID,score from stulnfo s inner join score o on s.stuID=o.stuID @@ -95,7 +95,8 @@ inner join course c on c.courseID=o.courseID select * from stulnfo s left join score o on s.stuID=o.stuID --8.查询出是周六周天来报到的学生 -select * from stulnfo where time>='2007-01-07' + +select * from stulnfo where datename(dw,time)='星期日' or datename(dw,time)=7 --9.查询出姓名中有字母a的学生的信息 select * from stulnfo where stuName like '%a%' diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\347\277\201\346\231\266\350\276\211/SQLQuery2.sql" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\347\277\201\346\231\266\350\276\211/SQLQuery2.sql" new file mode 100644 index 0000000..3ec6f3e --- /dev/null +++ "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\347\277\201\346\231\266\350\276\211/SQLQuery2.sql" @@ -0,0 +1,89 @@ +use master +go + +create database bmp +go + +use bmp +go + +create table tbl_card +( + ID nvarchar(30) primary key , + passWord nvarchar(10) not null, + balance int , + userName nvarchar(5) not null +) + +create table tbl_computer +( + ID nvarchar(30) primary key , + OnUse nvarchar(2) check(OnUse=0 or OnUse=1), + Note int +) + +create table tbl_record +( + ID char(5) primary key , + CardID nvarchar(30) references tbl_card(ID), + ComputerId nvarchar(30) references tbl_computer(ID), + BeginTime datetime , + EndTime datetime, + Fee char(5) +) + +insert into tbl_card values +('0023_ABC','555',98,'张军'), +('0025_bbd','abe',300,'朱俊'), +('0036_CCD','何柳',100,'何柳'), +('0045','0045_YGR',58,'证验'), +('0078_RJV','55885fg',600,'校庆'), +('0089_EDE','zhang',134,'张俊') + +insert into tbl_computer values +('02',0,25555), +('03',1,55555), +('04',0,66666), +('05',1,88888), +('06',0,688878), +('B01',0,558558) + +insert into tbl_record values +('23','0078_RJV','B01','2007-07-15 19:00:00','2007-7-15 21:00:00','20'), +('34','0025_bbd','02','2006-12-25 18:00:00','2006-12-25 22:00:00','23'), +('45','0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00','50'), +('46','0023_ABC','03','2006-12-22 15:26:00','2006-12-22 22:55:00','6'), +('47','0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00','50'), +('48','0023_ABC','03','2007-01-06 15:26:00','2007-01-06 22:55:00','6'), +('55','0023_ABC','03','2006-07-21 15:26:00','2006-07-21 22:55:00','50'), +('64','0045_Y..','04','2006-12-24 18:00:00','2006-12-24 22:00:00','3...'), +('65','0025_bbd','02','2006-12-28 18:00:00','2006-12-28 22:00:00','23'), +('98','0025_bbd','02','2006-12-26 18:00:00','2006-12-26 22:00:00','23') + + +select * from tbl_card +select * from tbl_computer +select * from tbl_record + +--请完成以下题目: +--1. 查询出用户名为'张军'的上网卡的上网记录,要求显示卡号,用户名,机器编号、开始时间、结束时间,和消费金额,并按消费金额降序排列 + +--2. 查询出每台机器上的上网次数和消费的总金额 + +--3. 查询出所有已经使用过的上网卡的消费总金额 + +--4. 查询出从未消费过的上网卡的卡号和用户名 + +--5. 将密码与用户名一样的上网卡信息查询出来 + +--6. 查询出使用次数最多的机器号和使用次数 + +--7. 查询出卡号是以'ABC'结尾的卡号,用户名,上网的机器号和消费金额 + +--8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 + +--9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 + +--10. 查询除消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 + + -- Gitee From a7d8abefc76e3769758472ca82d931b27cc036ca Mon Sep 17 00:00:00 2001 From: xiaohaisheng <2674550529@qq.com> Date: Wed, 31 Mar 2021 17:16:02 +0800 Subject: [PATCH 076/144] =?UTF-8?q?=E8=82=96=E6=B5=B7=E6=99=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SQLQuery2.sql" | 125 ++++++++++++++++++ 1 file changed, 125 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/SQLQuery2.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/SQLQuery2.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/SQLQuery2.sql" new file mode 100644 index 0000000..5d30e49 --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/SQLQuery2.sql" @@ -0,0 +1,125 @@ +use master +go +create database internetbar +on +( + name = 'internetbar', + filename='D:\sql\internetbar.mdf', + size = 5MB, + maxsize = 500MB, + filegrowth = 5MB +) +log on +( + name = 'internetbar_log', + filename='D:\sql\internetbar_log.ldf', + size = 5MB, + maxsize = 500MB, + filegrowth = 5MB +) +go +use internetbar +go + +create table tbl_card +( + cardID varchar(20) primary key not null, + passWord nvarchar(20) not null, + balance nvarchar(20) not null, + userName nvarchar(20) not null, +) +--卡号 +--密码 +--卡上余额 +--用户名 + +create table tbl_computer +( + computerID varchar(20) primary key not null, + onUse char(1) default(0) check(onUse=1 or onUse=0) not null, + note nvarchar(50) not null +) +--机器编号 +--机器使用情况 +--说明 + +create table tbl_record +( + recordID varchar(20) primary key not null, + cardID varchar(20) references tbl_card(cardID), + computerID varchar(20) references tbl_computer(computerID), + beginTime datetime, + endTime datetime, + fee int +) +--记录编号 +--卡号 +--机器编号 +--开始时间 +--结束时间 +--费用 + +insert into tbl_card values +('0023_ABC','555',98,'张军'), +('0025_bbd','abe',300,'朱俊'), +('0036_CCD','何柳',100,'何柳'), +('0045_YGR','0045_YGR',58,'证验'), +('0078_RJV','5585fg',600,'校庆'), +('0089_EDE','zhang',134,'张俊') + +insert into tbl_computer values +('02',0,25555), +('03',1,55555), +('04',0,66666), +('05',1,88888), +('06',0,688878), +('B01',0,558558) + +insert into tbl_record values +('23','0078_RJV','B01','2007-07-15 19:00:00','2007-07-15 21:00:00',20), +('34','0025_bbd','02','2006-12-25 16:00:00','2006-12-25 22:00:00',23), +('45','0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), +('46','0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',6), +('47','0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), +('48','0023_ABC','03','2007-01-06 15:26:00','2007-01-06 22:55:00',6), +('55','0023_ABC','03','2006-07-21 15:26:00','2006-07-21 22:55:00',50), +('64','0045_YGR','04','2006-12-24 18:00:00','2006-12-24 22:00:00',3), +('65','0025_bbd','02','2006-12-28 18:00:00','2006-12-28 22:00:00',23), +('98','0025_bbd','02','2006-12-26 18:00:00','2006-12-26 22:00:00',23) + +select * from tbl_card +select * from tbl_computer +select * from tbl_record + +--请完成以下题目: +--1. 查询出用户名为'张军'的上网卡的上网记录,要求显示卡号,用户名,机器编号、开始时间、结束时间,和消费金额,并按消费金额降序排列 +select C.cardID 卡号, userName 用户名, computerID 机器编号, beginTime 开始时间, endTime 结束时间,fee 消费金额 from +tbl_record R inner join tbl_card C on R.cardID=C.cardID +where userName='张军' order by fee desc +--2. 查询出每台机器上的上网次数和消费的总金额 +select computerID 机器编号, count(*) 机器上网次数, sum(fee) 总金额 from tbl_record group by computerID +--3. 查询出所有已经使用过的 上网卡的 消费总金额 +select sum(fee) 消费总金额 from tbl_record +--4. 查询出从未消费过的上网卡的卡号和用户名 +select C.cardID 卡号, userName 用户名 from +tbl_card C left join tbl_record R on C.cardID=R.cardID where fee is null or fee=' ' +--5. 将密码与用户名一样的上网卡信息查询出来 +select distinct A. * from +tbl_card A , tbl_card B where A.passWord=B.userName +--6. 查询出使用次数最多的机器号和使用次数 +select top 1 computerID 机器编号, count(*) 使用次数 from +tbl_record group by computerID order by count(*) desc +--7. 查询出卡号是以'ABC'结尾的卡号,用户名,上网的机器号和消费金额 +select R.cardID 卡号, userName 用户名, computerID 机器编号, fee 消费金额 from +tbl_record R inner join tbl_card C on R.cardID=C.cardID where R.cardID like '%ABC' +--8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select R.cardID 卡号, userName 用户名, computerID 机器编号,beginTime 开始时间,endTime 结束时间, fee 消费金额 from +tbl_record R inner join tbl_card C on R.cardID=C.cardID +where datepart(DW,beginTime)=7 or DATENAME(DW,beginTime)='星期日' +--9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select R.cardID 卡号, userName 用户名, computerID 机器编号,beginTime 开始时间,endTime 结束时间, fee 消费金额 from +tbl_record R inner join tbl_card C on R.cardID=C.cardID +where (endtime-beginTime)>12 +--10. 查询出消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select top 3 R.cardID 卡号, userName 用户名, computerID 机器编号,beginTime 开始时间,endTime 结束时间, fee 消费金额 from +tbl_record R inner join tbl_card C on R.cardID=C.cardID order by fee desc \ No newline at end of file -- Gitee From 2f2dadf28d7c706052cdf062c1697485d716c546 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B1=E6=9E=97=E6=9E=AB?= <2905363801@qq.com> Date: Wed, 31 Mar 2021 17:18:13 +0800 Subject: [PATCH 077/144] =?UTF-8?q?=E9=82=B1=E6=9E=97=E6=9E=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SQLQuery1.sql" | 56 ++++++++++ .../\344\275\234\344\270\232\344\272\214.sql" | 104 ++++++++++++++++++ 2 files changed, 160 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\202\261\346\236\227\346\236\253/SQLQuery1.sql" create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\202\261\346\236\227\346\236\253/\344\275\234\344\270\232\344\272\214.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\202\261\346\236\227\346\236\253/SQLQuery1.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\202\261\346\236\227\346\236\253/SQLQuery1.sql" new file mode 100644 index 0000000..7edfc8a --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\202\261\346\236\227\346\236\253/SQLQuery1.sql" @@ -0,0 +1,56 @@ +--有如图所示的三张表结构,学生信息表(stuInfo),课程信息表(courseInfo),分数信息表(scoreInfo) + +--题目: + +select * from stuInfo + +select * from scoreInfo + +select * from courseInfo + + +--1.查询出 每个学生 所选修的课程的数量 和 所选修的课程的考试的平均分 +select stuName 学生,count(distinct courseId) 课程数量,AVG(score)平均分 from scoreInfo +inner join stuInfo on stuInfo.stuId = scoreInfo.stuId +group by stuName + +select distinct stuAge,stuSex from stuInfo + +--2.查询出 每门课程 的选修的学生的个数 和 学生考试的总分 +select courseId,COUNT(distinct stuId)学生个数,SUM(score)考试总分 from scoreInfo group by courseId + +--3.查询出性别一样并且年龄一样的学生的信息 +select A.* from stuInfo A,stuInfo B where A.stuSex=B.stuSex AND A.stuAge=B.stuAge AND A.stuId!=B.stuId + +--4.查询出学分一样的课程信息 +SELECT DISTINCT A.* FROM courseInfo A,courseInfo B where A.courseMarks=B.courseMarks and A.courseId<>B.courseId + +--5.查询出参加了考试的学生的学号,姓名,课程号和分数 +select stuInfo.stuId,stuInfo.stuName,courseId,score from scoreInfo,stuInfo where scoreInfo.stuId=stuInfo.stuId--相当于内连接 +--内连接,查询的结果 = 共同的记录 + +--6.查询出参加了考试的学生的学号,课程号,课程名,课程学分和分数 +select SI.stuId,SI.stuName,C.courseId,C.courseName,C.courseMarks,score from scoreInfo SC +INNER JOIN stuInfo SI ON SI.stuId= SC.stuId +INNER JOIN courseInfo C ON C.courseId= SC.courseId + +--7.查询出没有参加考试的学生的学号和姓名 +select stuinfo.stuId,stuName from scoreInfo +right join stuInfo on scoreInfo.stuId=stuInfo.stuId +where scoreInfo.scoreId is null + +--8.查询出 是周六或者周天 来报到的学生 +--日期函数 datediff dateadd +--日期函数 datename datepart +select DATENAME(DW,GETDATE()) --返回字符串 +select datepart(DW,GETDATE()) --返回数字,周天是第一天 +select datename(DW,'2007-01-06 01:11:36.590') +select * from stuInfo WHERE DATENAME(DW,time)='星期日' or DATEPART(DW,time)=7 + +--9.查询出姓名中有字母a的学生的信息 + + +--10.查询出 选修了2门课程以上 的并且考试平均分在70以上 的 (每个)学生的 学号 和 考试平均分 以及 选修课程的数量 +select stuName 学生,AVG(score)平均分,COUNT(distinct courseId)课程数量 from scoreInfo SI +inner join stuInfo ST on ST.stuId=SI.stuId +group by stuName having COUNT(distinct courseId)>2 and AVG(score)>70 diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\202\261\346\236\227\346\236\253/\344\275\234\344\270\232\344\272\214.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\202\261\346\236\227\346\236\253/\344\275\234\344\270\232\344\272\214.sql" new file mode 100644 index 0000000..f04c0bb --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\202\261\346\236\227\346\236\253/\344\275\234\344\270\232\344\272\214.sql" @@ -0,0 +1,104 @@ +use master +go + +if exists(select * from sys.databases where name = 'tbl') +drop database tbl + +create database tbl +go + +use tbl +go + +create table tbl_card +( + id varchar(10) primary key, + passWord varchar(10) not null, + balance decimal(10,1) not null, + userName nchar(2) not null +) + +create table tbl_computer +( + id varchar(10) primary key, + onUse char(1) check(onUse='0' or onUse='1') not null, + note text +) + +create table tbl_record +( + id int primary key, + cardId varchar(10) references tbl_card(id) not null, + ComputerId varchar(10) references tbl_computer(id) not null, + beginTime datetime not null, + endTime datetime not null, + fee decimal(10,1) +) + +insert into tbl_card(id,passWord,balance,userName ) values +('0023_ABC','555','98','张军'), +('0025_bbd','abe','300','朱俊'), +('0036_CCD','何柳','100','何柳'), +('0045_YGR','0045_YGR','58','证验'), +('0078_RJV','55885fg','600','校庆'), +('0089_EDE','zhang','134','张峻') + + +insert into tbl_computer(id,onUse,note) values +('02',0,'25555'), +('03',1,'55555'), +('04',0,'66666'), +('05',1,'8888'), +('06',0,'688878'), +('B01',0,'558558') + +insert into tbl_record(id,cardId,ComputerId,beginTime,endTime,fee) values +('23','0078_RJV','B01','2007-07-15 19:00:00','2007-07-15 21:00:00','20'), +('34','0025_bbd','02','2006-12-25 18:00:00','2006-12-25 22:00:00','23'), +('45','0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00','50'), +('46','0023_ABC','03','2006-12-22 15:26:00','2006-12-22 22:55:00','6'), +('47','0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00','50'), +('48','0023_ABC','03','2007-01-06 15:26:00','2007-01-06 22:55:00','6'), +('55','0023_ABC','03','2006-07-21 15:26:00','2006-07-21 22:55:00','50'), +('64','0045_YGR','04','2006-12-24 18:00:00','2006-12-24 22:00:00','30'), +('65','0025_bbd','02','2006-12-28 18:00:00','2006-12-28 22:00:00','23'), +('98','0025_bbd','02','2006-12-26 18:00:00','2006-12-26 22:00:00','23') +--请完成以下题目: +--1. 查询出用户名为'张军'的上网卡的上网记录,要求显示卡号,用户名,机器编号、开始时间、结束时间,和消费金额,并按消费金额降序排列 +select tc.id 卡号,userName 用户名,tc.id 机器编号,beginTime 开始时间,endTime 结束时间,fee 消费金额 from tbl_card tc +inner join tbl_record tr on tc.id = tr.cardId where userName='张军' order by fee desc + +--2. 查询出每台机器上的上网次数和消费的总金额 +select ComputerId,count(*) 上网次数,sum(fee)消费的总金额 from tbl_record group by ComputerId + +--3. 查询出所有已经使用过的上网卡的消费总金额 +select cardId ,sum(fee)消费总金额 from tbl_record group by cardId + +--4. 查询出从未消费过的上网卡的卡号和用户名 +select tc.id,tc.userName from tbl_card tc +left join tbl_record tr on tr.cardId = tc.id where tr.id is null + +--5. 将密码与用户名一样的上网卡信息查询出来 +select * from tbl_card t1 join tbl_card t2 on t1.id = t2.id and t1.passWord = t2.userName + +--6. 查询出使用次数最多的机器号和使用次数 +select ComputerId,count(*)使用次数 from tbl_record group by ComputerId +having count(*)=(select max(m.使用次数) from (select ComputerId,count(*)使用次数 from tbl_record group by ComputerId)m) + +--7. 查询出卡号是以'ABC'结尾的卡号,用户名,上网的机器号和消费金额 +select tc.id 卡号,tc.userName 用户名,tr.ComputerId 机器号,tr.fee 消费金额 from tbl_record tr join tbl_card tc on tr.cardId = tc.id + +where tc.id like '%ABC' +--8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select tc.id 卡号,tc.userName 用户名,tr.ComputerId 机器号,beginTime 开始时间,endTime 结束时间,tr.fee 消费金额 from tbl_record tr join tbl_card tc on tr.cardId = tc.id +where datename(DW,beginTime)='星期六' or datename(DW,beginTime)='星期日' + +--9. 查询出一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select tc.id 卡号,tc.userName 用户名,tr.ComputerId 机器号,beginTime 开始时间,endTime 结束时间,tr.fee 消费金额 from tbl_record tr join tbl_card tc on tr.cardId = tc.id +where datediff(HH,beginTime,endTime)>12 + +--10. 查询出消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select tc.id 卡号,tc.userName 用户名,tr.ComputerId 机器号,beginTime 开始时间,endTime 结束时间, tr.fee 消费金额 from tbl_record tr join tbl_card tc on tr.cardId = tc.id +where tr.fee in (select distinct top 3 fee from tbl_record order by fee desc) order by fee desc + + -- Gitee From 92bb09111f2ee8a20adfc8e9e316954bc2a3c094 Mon Sep 17 00:00:00 2001 From: xiaohaisheng <2674550529@qq.com> Date: Wed, 31 Mar 2021 17:18:32 +0800 Subject: [PATCH 078/144] =?UTF-8?q?=E5=88=A0=E9=99=A4=E6=96=87=E4=BB=B6=20?= =?UTF-8?q?=E7=AC=AC=E5=8D=81=E4=B8=80=E6=AC=A1=E8=AF=BE=E4=BD=9C=E4=B8=9A?= =?UTF-8?q?/SQLQuery2.sql?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SQLQuery2.sql" | 125 ------------------ 1 file changed, 125 deletions(-) delete mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/SQLQuery2.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/SQLQuery2.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/SQLQuery2.sql" deleted file mode 100644 index 5d30e49..0000000 --- "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/SQLQuery2.sql" +++ /dev/null @@ -1,125 +0,0 @@ -use master -go -create database internetbar -on -( - name = 'internetbar', - filename='D:\sql\internetbar.mdf', - size = 5MB, - maxsize = 500MB, - filegrowth = 5MB -) -log on -( - name = 'internetbar_log', - filename='D:\sql\internetbar_log.ldf', - size = 5MB, - maxsize = 500MB, - filegrowth = 5MB -) -go -use internetbar -go - -create table tbl_card -( - cardID varchar(20) primary key not null, - passWord nvarchar(20) not null, - balance nvarchar(20) not null, - userName nvarchar(20) not null, -) ---卡号 ---密码 ---卡上余额 ---用户名 - -create table tbl_computer -( - computerID varchar(20) primary key not null, - onUse char(1) default(0) check(onUse=1 or onUse=0) not null, - note nvarchar(50) not null -) ---机器编号 ---机器使用情况 ---说明 - -create table tbl_record -( - recordID varchar(20) primary key not null, - cardID varchar(20) references tbl_card(cardID), - computerID varchar(20) references tbl_computer(computerID), - beginTime datetime, - endTime datetime, - fee int -) ---记录编号 ---卡号 ---机器编号 ---开始时间 ---结束时间 ---费用 - -insert into tbl_card values -('0023_ABC','555',98,'张军'), -('0025_bbd','abe',300,'朱俊'), -('0036_CCD','何柳',100,'何柳'), -('0045_YGR','0045_YGR',58,'证验'), -('0078_RJV','5585fg',600,'校庆'), -('0089_EDE','zhang',134,'张俊') - -insert into tbl_computer values -('02',0,25555), -('03',1,55555), -('04',0,66666), -('05',1,88888), -('06',0,688878), -('B01',0,558558) - -insert into tbl_record values -('23','0078_RJV','B01','2007-07-15 19:00:00','2007-07-15 21:00:00',20), -('34','0025_bbd','02','2006-12-25 16:00:00','2006-12-25 22:00:00',23), -('45','0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), -('46','0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',6), -('47','0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), -('48','0023_ABC','03','2007-01-06 15:26:00','2007-01-06 22:55:00',6), -('55','0023_ABC','03','2006-07-21 15:26:00','2006-07-21 22:55:00',50), -('64','0045_YGR','04','2006-12-24 18:00:00','2006-12-24 22:00:00',3), -('65','0025_bbd','02','2006-12-28 18:00:00','2006-12-28 22:00:00',23), -('98','0025_bbd','02','2006-12-26 18:00:00','2006-12-26 22:00:00',23) - -select * from tbl_card -select * from tbl_computer -select * from tbl_record - ---请完成以下题目: ---1. 查询出用户名为'张军'的上网卡的上网记录,要求显示卡号,用户名,机器编号、开始时间、结束时间,和消费金额,并按消费金额降序排列 -select C.cardID 卡号, userName 用户名, computerID 机器编号, beginTime 开始时间, endTime 结束时间,fee 消费金额 from -tbl_record R inner join tbl_card C on R.cardID=C.cardID -where userName='张军' order by fee desc ---2. 查询出每台机器上的上网次数和消费的总金额 -select computerID 机器编号, count(*) 机器上网次数, sum(fee) 总金额 from tbl_record group by computerID ---3. 查询出所有已经使用过的 上网卡的 消费总金额 -select sum(fee) 消费总金额 from tbl_record ---4. 查询出从未消费过的上网卡的卡号和用户名 -select C.cardID 卡号, userName 用户名 from -tbl_card C left join tbl_record R on C.cardID=R.cardID where fee is null or fee=' ' ---5. 将密码与用户名一样的上网卡信息查询出来 -select distinct A. * from -tbl_card A , tbl_card B where A.passWord=B.userName ---6. 查询出使用次数最多的机器号和使用次数 -select top 1 computerID 机器编号, count(*) 使用次数 from -tbl_record group by computerID order by count(*) desc ---7. 查询出卡号是以'ABC'结尾的卡号,用户名,上网的机器号和消费金额 -select R.cardID 卡号, userName 用户名, computerID 机器编号, fee 消费金额 from -tbl_record R inner join tbl_card C on R.cardID=C.cardID where R.cardID like '%ABC' ---8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 -select R.cardID 卡号, userName 用户名, computerID 机器编号,beginTime 开始时间,endTime 结束时间, fee 消费金额 from -tbl_record R inner join tbl_card C on R.cardID=C.cardID -where datepart(DW,beginTime)=7 or DATENAME(DW,beginTime)='星期日' ---9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 -select R.cardID 卡号, userName 用户名, computerID 机器编号,beginTime 开始时间,endTime 结束时间, fee 消费金额 from -tbl_record R inner join tbl_card C on R.cardID=C.cardID -where (endtime-beginTime)>12 ---10. 查询出消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 -select top 3 R.cardID 卡号, userName 用户名, computerID 机器编号,beginTime 开始时间,endTime 结束时间, fee 消费金额 from -tbl_record R inner join tbl_card C on R.cardID=C.cardID order by fee desc \ No newline at end of file -- Gitee From b78855ea49b68827b411043c392a501c9dc20c9b Mon Sep 17 00:00:00 2001 From: xiaohaisheng <2674550529@qq.com> Date: Wed, 31 Mar 2021 17:18:50 +0800 Subject: [PATCH 079/144] =?UTF-8?q?=E8=82=96=E6=B5=B7=E6=99=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SQLQuery2.sql" | 125 ++++++++++++++++++ 1 file changed, 125 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\202\226\346\265\267\346\231\237/SQLQuery2.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\202\226\346\265\267\346\231\237/SQLQuery2.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\202\226\346\265\267\346\231\237/SQLQuery2.sql" new file mode 100644 index 0000000..5d30e49 --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\350\202\226\346\265\267\346\231\237/SQLQuery2.sql" @@ -0,0 +1,125 @@ +use master +go +create database internetbar +on +( + name = 'internetbar', + filename='D:\sql\internetbar.mdf', + size = 5MB, + maxsize = 500MB, + filegrowth = 5MB +) +log on +( + name = 'internetbar_log', + filename='D:\sql\internetbar_log.ldf', + size = 5MB, + maxsize = 500MB, + filegrowth = 5MB +) +go +use internetbar +go + +create table tbl_card +( + cardID varchar(20) primary key not null, + passWord nvarchar(20) not null, + balance nvarchar(20) not null, + userName nvarchar(20) not null, +) +--卡号 +--密码 +--卡上余额 +--用户名 + +create table tbl_computer +( + computerID varchar(20) primary key not null, + onUse char(1) default(0) check(onUse=1 or onUse=0) not null, + note nvarchar(50) not null +) +--机器编号 +--机器使用情况 +--说明 + +create table tbl_record +( + recordID varchar(20) primary key not null, + cardID varchar(20) references tbl_card(cardID), + computerID varchar(20) references tbl_computer(computerID), + beginTime datetime, + endTime datetime, + fee int +) +--记录编号 +--卡号 +--机器编号 +--开始时间 +--结束时间 +--费用 + +insert into tbl_card values +('0023_ABC','555',98,'张军'), +('0025_bbd','abe',300,'朱俊'), +('0036_CCD','何柳',100,'何柳'), +('0045_YGR','0045_YGR',58,'证验'), +('0078_RJV','5585fg',600,'校庆'), +('0089_EDE','zhang',134,'张俊') + +insert into tbl_computer values +('02',0,25555), +('03',1,55555), +('04',0,66666), +('05',1,88888), +('06',0,688878), +('B01',0,558558) + +insert into tbl_record values +('23','0078_RJV','B01','2007-07-15 19:00:00','2007-07-15 21:00:00',20), +('34','0025_bbd','02','2006-12-25 16:00:00','2006-12-25 22:00:00',23), +('45','0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), +('46','0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',6), +('47','0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), +('48','0023_ABC','03','2007-01-06 15:26:00','2007-01-06 22:55:00',6), +('55','0023_ABC','03','2006-07-21 15:26:00','2006-07-21 22:55:00',50), +('64','0045_YGR','04','2006-12-24 18:00:00','2006-12-24 22:00:00',3), +('65','0025_bbd','02','2006-12-28 18:00:00','2006-12-28 22:00:00',23), +('98','0025_bbd','02','2006-12-26 18:00:00','2006-12-26 22:00:00',23) + +select * from tbl_card +select * from tbl_computer +select * from tbl_record + +--请完成以下题目: +--1. 查询出用户名为'张军'的上网卡的上网记录,要求显示卡号,用户名,机器编号、开始时间、结束时间,和消费金额,并按消费金额降序排列 +select C.cardID 卡号, userName 用户名, computerID 机器编号, beginTime 开始时间, endTime 结束时间,fee 消费金额 from +tbl_record R inner join tbl_card C on R.cardID=C.cardID +where userName='张军' order by fee desc +--2. 查询出每台机器上的上网次数和消费的总金额 +select computerID 机器编号, count(*) 机器上网次数, sum(fee) 总金额 from tbl_record group by computerID +--3. 查询出所有已经使用过的 上网卡的 消费总金额 +select sum(fee) 消费总金额 from tbl_record +--4. 查询出从未消费过的上网卡的卡号和用户名 +select C.cardID 卡号, userName 用户名 from +tbl_card C left join tbl_record R on C.cardID=R.cardID where fee is null or fee=' ' +--5. 将密码与用户名一样的上网卡信息查询出来 +select distinct A. * from +tbl_card A , tbl_card B where A.passWord=B.userName +--6. 查询出使用次数最多的机器号和使用次数 +select top 1 computerID 机器编号, count(*) 使用次数 from +tbl_record group by computerID order by count(*) desc +--7. 查询出卡号是以'ABC'结尾的卡号,用户名,上网的机器号和消费金额 +select R.cardID 卡号, userName 用户名, computerID 机器编号, fee 消费金额 from +tbl_record R inner join tbl_card C on R.cardID=C.cardID where R.cardID like '%ABC' +--8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select R.cardID 卡号, userName 用户名, computerID 机器编号,beginTime 开始时间,endTime 结束时间, fee 消费金额 from +tbl_record R inner join tbl_card C on R.cardID=C.cardID +where datepart(DW,beginTime)=7 or DATENAME(DW,beginTime)='星期日' +--9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select R.cardID 卡号, userName 用户名, computerID 机器编号,beginTime 开始时间,endTime 结束时间, fee 消费金额 from +tbl_record R inner join tbl_card C on R.cardID=C.cardID +where (endtime-beginTime)>12 +--10. 查询出消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select top 3 R.cardID 卡号, userName 用户名, computerID 机器编号,beginTime 开始时间,endTime 结束时间, fee 消费金额 from +tbl_record R inner join tbl_card C on R.cardID=C.cardID order by fee desc \ No newline at end of file -- Gitee From 8672dee51f2de3bc46c2405edfc65a12d72456d2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=85=A2=E2=85=A9-SY?= <1527933908@qq.com> Date: Wed, 31 Mar 2021 17:19:31 +0800 Subject: [PATCH 080/144] =?UTF-8?q?=E6=96=B0=E5=BB=BA=20=E6=9E=97=E6=80=9D?= =?UTF-8?q?=E5=B0=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\346\236\227\346\200\235\345\260\271/.keep" | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\236\227\346\200\235\345\260\271/.keep" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\236\227\346\200\235\345\260\271/.keep" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\236\227\346\200\235\345\260\271/.keep" new file mode 100644 index 0000000..e69de29 -- Gitee From 520e5907b7dce20d2840aba1c98b509c479ca142 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=85=A2=E2=85=A9-SY?= <1527933908@qq.com> Date: Wed, 31 Mar 2021 17:19:56 +0800 Subject: [PATCH 081/144] =?UTF-8?q?=E6=9E=97=E6=80=9D=E5=B0=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SQLQuery2.sql" | 143 ++++++++++++++++++ 1 file changed, 143 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\236\227\346\200\235\345\260\271/SQLQuery2.sql" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\236\227\346\200\235\345\260\271/SQLQuery2.sql" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\236\227\346\200\235\345\260\271/SQLQuery2.sql" new file mode 100644 index 0000000..f9ca5ca --- /dev/null +++ "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\236\227\346\200\235\345\260\271/SQLQuery2.sql" @@ -0,0 +1,143 @@ +use master +go +create database internet_bar +on +(name='internet_bar', +filename='D:\internet_bar.mdf', +size=10mb, +maxsize=100mb, +filegrowth=10% +) +log on +(name='internet_bar_log', +filename='D:\internet_bar_log.ldf', +size=10mb, +maxsize=100mb, +filegrowth=10% +) +go +use internet_bar +go +create table tbl_card +(id varchar (10) primary key , +[password] nvarchar(20) check(len(passWord) between 2 and 20) not null, +balance decimal(10,1), +userName nvarchar(20) not null +) +go +create table tbl_computer +(id varchar(10) primary key, +onUse int check(onUse in (0,1)), +note text +) +go + +create table tbl_record +( + id varchar(10) primary key, + cardId varchar(10) references tbl_card(id), + ComputerId varchar(10) references tbl_computer(id), + beginTime smalldatetime, + endTime smalldatetime, + fee decimal(10,1) +) +go + +insert into tbl_card values +('0023_ABC', '555', 98, '张军'), +('0025_bbd', 'abe', 300, '朱俊'), +('0036_CCD', '何柳', 100, '何柳'), +('0045_YGR', '0045_YGR', 58, '证验'), +('0078_RJV', '55885fg', 600, '校庆'), +('0089_EDE', 'zhang', 134, '张峻') +go + +insert into tbl_computer values +('02', 0, '25555'), +('03', 1, '55555'), +('04', 0, '66666'), +('05', 1, '88888'), +('06', 0, '688878'), +('B01', 0, '558558') +go + +insert into tbl_record values +('23', '0078_RJV', 'B01', '2007-07-15 19:00:00', '2007-07-15 21:00:00', 20), +('34', '0025_bbd', '02', '2006-12-25 18:00:00', '2006-12-25 22:00:00', 23), +('45', '0023_ABC', '03', '2006-12-23 15:26:00', '2006-12-23 22:55:00', 50), +('46', '0023_ABC', '03', '2006-12-22 15:26:00', '2006-12-22 22:55:00', 6), +('47', '0023_ABC', '03', '2006-12-23 15:26:00', '2006-12-23 22:55:00', 50), +('48', '0023_ABC', '03', '2007-01-06 15:26:00', '2007-01-06 22:55:00', 6), +('55', '0023_ABC', '03', '2006-07-21 15:26:00', '2006-07-21 22:55:00', 50), +('64', '0045_YGR', '04', '2006-12-24 18:00:00', '2006-12-24 22:00:00', 3), +('65', '0025_bbd', '02', '2006-12-28 18:00:00', '2006-12-28 22:00:00', 23), +('98', '0025_bbd', '02', '2006-12-26 18:00:00', '2006-12-26 22:00:00', 23) +go + +select* from tbl_card +select* from tbl_computer +select* from tbl_record + + + + +--请完成以下题目: +--1. 查询出用户名为'张军'的上网卡的上网记录,要求显示卡号,用户名,机器编号、开始时间、结束时间,和消费金额,并按消费金额降序排列 +select c.id '卡号',userName '用户名',ComputerId '机器编号', beginTime '开始时间', endTime '结束时间', fee '消费金额'from tbl_record r join tbl_card c on r.cardId = c.id where userName='张军' + order by fee desc + + +--2. 查询出每台机器上的上网次数和消费的总金额 +select ComputerId ,count (CardId)上网次数,sum(fee)总金额 from tbl_record group by ComputerId +--3. 查询出所有已经使用过的上网卡的消费总金额 +select cardId, sum(fee) '消费总金额' from tbl_record group by cardId + +--4. 查询出从未消费过的上网卡的卡号和用户名 +select c.id, userName from tbl_card c left join tbl_record r on r.cardId = c.id where r.id is null +--5. 将密码与用户名一样的上网卡信息查询出来 +select id,password,balance, userName from tbl_card where password=userName +select c1. * from tbl_card c1 join tbl_card c2 on c1.[passWord] =c2.userName + +--6. 查询出使用次数最多的机器号和使用次数 +select ComputerId, count(*) '使用次数' from tbl_record group by ComputerId having count(*) = (select max(t.使用次数) from (select ComputerId, count(*) '使用次数' from tbl_record group by ComputerId) t) + +--7. 查询出卡号是以'ABC'结尾的卡号,用户名,上网的机器号和消费金额 +select c .id , userName, ComputerId,fee from tbl_record r join tbl_card c on r.cardId = c.id where c.id like '%ABC' + +--8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select c.id, c.userName, r.ComputerId, r.beginTime, r.endTime, r.fee from tbl_record r join tbl_card c +on + r.cardId = c.id +where + DATENAME(dw, r.beginTime) in ('星期六','星期日') +--9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select + c.id,c.userName, r.ComputerId, r.beginTime,r.endTime, r.fee from tbl_record r +join + tbl_card c +on + r.cardId = c.id +where + DATEDIFF(HH, r.beginTime, r.endTime) > 12 +--10. 查询出消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 + +select + c.id, c.userName, r.ComputerId, r.beginTime, r.endTime, r.fee +from + tbl_record r +join + tbl_card c +on + r.cardId = c.id +where + r.fee in ( + select + top 3 fee + from + tbl_record + order by + fee desc + ) +order by + r.fee desc + -- Gitee From e7d3c86c91742bd388106ac13a8df2cf74ff4449 Mon Sep 17 00:00:00 2001 From: zcd435 <2811780189@qq.com> Date: Wed, 31 Mar 2021 17:31:21 +0800 Subject: [PATCH 082/144] 5285 --- .../SQLQueryZ2.sql" | 66 +++++++++++++++++++ 1 file changed, 66 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\233\276\344\273\216\346\235\234/SQLQueryZ2.sql" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\233\276\344\273\216\346\235\234/SQLQueryZ2.sql" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\233\276\344\273\216\346\235\234/SQLQueryZ2.sql" new file mode 100644 index 0000000..c359ef6 --- /dev/null +++ "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\233\276\344\273\216\346\235\234/SQLQueryZ2.sql" @@ -0,0 +1,66 @@ +use master +go +create database billing +use billing +go +create table tbl_card +( +id char(10) primary key, +passWord char(20), +banlance money, +userName nvarchar(10) +) +create table tbl_computer +( +id char(10) primary key , +onUse int check(onUse=0 or onUse=1), +note text +) +create table tbl_record +( +id int primary key, +cardid char(10) references tbl_card(id), +ComputerId char(10) references tbl_computer(id), +beginTime date, +endTime date, +fee money +) +insert into tbl_card values +('0023_ABC','555',98,'张军'), +('0025_bbd','abe',300,'朱骏'), +('0036_CCD','何柳',100,'何柳'), +('0045_YGR','0045_YGR',58,'证验'), +('0078_RJV','5585fg',600,'校庆'), +('0089_EDE','zhang',134,'张峻') +insert into tbl_computer values +('02',0,'25555'), +('03',1,'55555'), +('04',0,'66666'), +('05',1,'88888'), +('06',0,'688878'), +('B01',0,'558558') +insert into tbl_record values +('23','0078_RJV','B01','2007-7-15 19:00:00','2007-7-15 21:00:00',20), +('34','0025_bbd','02','2006-12-25 18:00:00','2006-12-25 22:00:00',23), +('45','0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), +('46','0023_ABC','03','2006-12-22 15:26:00','2006-12-22 22:55:00',6), +('47','0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), +('48','0023_ABC','03','2007-01-06 15:26:00','2007-01-06 22:55:00',6), +('55','0023_ABC','03','2007-07-21 15:26:00','2007-07-21 22:55:00',50), +('64','0045_YGR','04','2006-12-24 18:00:00','2006-12-24 22:00:00',23), +('65','0025_bbd','02','2006-12-28 18:00:00','2006-12-28 22:00:00',23), +('98','0025_bbd','02','2006-12-26 18:00:00','2006-12-26 22:00:00',23) +select tbl_card.id,userName,tbl_record.ComputerId,tbl_record.beginTime,tbl_record.endTime,tbl_record.fee from tbl_card inner join tbl_record on tbl_card.id=tbl_record.cardid where userName='张军' order by fee desc +select ComputerId,COUNT(ComputerId) 上网次数,sum(fee) 消费总金额 from tbl_record group by ComputerId +select cardid,sum(fee) 消费总金额 from tbl_record group by cardid +select cardid,userName from tbl_card left join tbl_record on tbl_card.id=tbl_record.cardid where fee is null +select * from tbl_card where passWord=userName +select top 1 ComputerId,count(ComputerId) 次数 from tbl_record group by ComputerId order by count(ComputerId) desc +select cardid,tbl_card.userName,ComputerId,fee from tbl_record inner join tbl_card on tbl_record.cardid=tbl_card.id where cardid like '%ABC' +select cardid,tbl_card.userName,ComputerId,beginTime,endTime,fee from tbl_record inner join tbl_card on tbl_record.cardid=tbl_card.id where DATENAME(DW,beginTime)='星期日' or DATENAME(DW,beginTime)='星期六' +select cardid,tbl_card.userName,ComputerId,beginTime,endTime,fee from tbl_record inner join tbl_card on tbl_record.cardid=tbl_card.id where DATEDIFF(hh,beginTime,endTime)>12 +select top 3 cardid,tbl_card.userName,ComputerId,beginTime,endTime,fee from tbl_record inner join tbl_card on tbl_record.cardid=tbl_card.id order by fee desc + +select * from tbl_card +select * from tbl_computer +select * from tbl_record \ No newline at end of file -- Gitee From a51e6fcc4ba697ed3249adfba42835c5c10e4aab Mon Sep 17 00:00:00 2001 From: cdy9946 Date: Wed, 31 Mar 2021 17:40:47 +0800 Subject: [PATCH 083/144] fs --- .../2.bmp" | Bin 0 -> 1116774 bytes .../50\351\242\230.txt" | 415 ++++++++++++++++++ .../\344\275\234\344\270\232\344\272\214.txt" | 47 ++ .../SQLQuery2.sql" | 40 +- 4 files changed, 487 insertions(+), 15 deletions(-) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\277\201\346\231\266\350\276\211/2.bmp" create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\277\201\346\231\266\350\276\211/50\351\242\230.txt" create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\277\201\346\231\266\350\276\211/\344\275\234\344\270\232\344\272\214.txt" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\277\201\346\231\266\350\276\211/2.bmp" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\277\201\346\231\266\350\276\211/2.bmp" new file mode 100644 index 0000000000000000000000000000000000000000..93b6faf52d8cb48c72c03fccb90af8e20f23d80a GIT binary patch literal 1116774 zcmeIbLDDQc(zMlJ#)KI&mcWn^V~jc5U>&_3rmO;E^xJRj2jX`0@%9^`P^vPetW1@c z<@dJB6$(W>buv@^_Wkbp-~RXiQ)U zfBet?p8wb2-#`98eMCS6L_h>YKmYKmYKmYKmYKmYKmYKmY zKmYKmYKmYKmYKmYKm5!m!`uC_$r(FFe2^s&dz+={0s zoLk;VwhdYcZSL1mXz>1_kWOd54(Yng(;+CK2y8>(pMU?@>0|nxI6dM0@Hc27K-;gQ z(BS<;A)U^A9ny7~r$bOe5!i-+-FLX`=%MpQ^PAo8>9k)*%`fgwQ%I-NUWasD=IIcW zPz1IiVD}xaH=Z~Ckv=QFn*E+m`*pP9d;ch>kbZ<~BzPUtb(u%{Qj7@vCIP$eaJ})o zanHB5-_vQoj_&!B(Ah;uJ8;fTtwXvl^SMs7N(6p^fZcbv4$m9-T>{8t2U8H8TRSfg z4u&o~CroS+1OiNiC2-8oVIdEO<1KJb-V3Q7BC3v>^}|H*BMyR1Fbb@75yE)Zr{HiT zw9P`B2*ErXrY;8armiYq2lqr=L`PP4Y^*3QfOjwjDCdD9#-;^aJV&b5H$4-_LEdD$cAa!hFXFd*-h9ZrJ$ zY*yNW^Hg>^IXl5vwEE!GLW7U>Oy*q9n z{j%vgJLiJ2Y8)w+nBX$lXWh@tk>wCo8>H3|_v;Pz9iQbG)*<0x@Cl?SGVF^~K^%TrAznif5P|Ci z?7qX*KX34jJpRP63aeZD(}dX6gnz2`|IGjOpB|GP^P6Tf=XeXe9J{mm5M6b|<$3+w z#fZZhpg9Rl6P1stPJrj(fUMy_G&B1wVjw!fzB~Wi2B|m25ZHkaVY99~PG<_seHZ>Y zj+9sNUhK0T$;|Q6A|L|S3D|vy>n-Pv!>;oKCp(;^KWmZI(}@?d_T<^&O~0$Fj<_nX zpSu`wI0G~%foY=hG1Uq1JRDGIWaA~Xf<34G+y*IALU$&ZSQz>g2eAG$7@LkG#gecW z`>aPYbG)<&h`@CMcHiN8;CX|eTKSn)wa=?OCOf>gKWmZI(}@?l&JJ(%9DSvu++%jo zsZIHZou)R^BEwX6IAC37-lbU>0wDH4iguiQpZ}s@q`iU^Nt&X{+zgf}0wOSlfZcbv z`sWSX&L8jL5#(m4n9i*|k}$+z*xA>nLOt2xfc~sSUTlH)dWgQ*k;7+h+2Kw(()>8$zmLB8&F=Sf z+OMPL7k8&Aq|<4yL%J^WbO=f)0^1O<`%ae#h=2(E8i8$|;c7$#-a^2Bp%Fgz*qK}W z^n`QE8_Bjo3!%;ZItmTmKNQmG%-11Zmw7q_B@}^e2-rWf!5=$&OurMSC%hm21}y|= z`*jo=yniU9)0wYBx-Ro{2udgd+Yqq(4woG~blzxwv->@r_Uowm#ocKN>2%ubkgm%- z9fA^yz%~TzzQgs#^9KI?LJ%vyn*E+m`*pP9d;ch>kbZ<~BzPUtb(u%{Qj7@vCIP$e zaJ})oanHB5-_vQoj_&!B(Ah;uJ8;fTtwXvl^SMs7N(6p^fZcbv4$m9;cL>?Z&^otv zULG6_U3hYsd9M&)k(FaU@*u2AINk#1JWN|{cY|Mb)T|#S3L9|{Y=Ti>t&0%Gvpxlf zBcW{;+C&KE*)Vl6m^XF30a74x!HC#F?})D)3#g_zIbwpih%{v5VU?L((mm=P!Efpe|}EPtRF>B!3-L6>7f%ZCAZuk3IV z5g014roa9lu>L}OG?VN_mN%9s+GBh#;S3oSYm?9V4rnAGe=5`fC$VYVD}xa!}EsS$o}!&O`{CfFkMu)HZO6V z9i+k(giWzVWbi$PBP)k91U=pY7V?fTpChV{P$BAvu&D~2`S>6M3!CMk>!z8fKFVAL z^IopAg9`Ihb`T7)4N~if`}GFyYp;_ykfE8TLi0AP&E*5U-&Kh`@CMcHiMT zJa2^U?AFF7O!2U~wQViJTxSOXCJ3()RA$(q*^>_=s7Q3_g5M6b| z<$3+w#fZZhpg9Rl6P1rC4q%NWY-SAyqLUdh5S?HY0I>~H?}#C=10TX>U3Z+$6qfrg z{Bs;Buj0MfXFZacCeKa>5a(+LSYUOm=u}f7T+e zw7?rZM_=iPakvfB1uzJ znVZ2fML-0m5U~3WSO2_W+xg=ik01GJZU1Wy?`m+{!u?61i zA^KuR4xhPYhdbp+^E<(LDmyo1&YNb3%P_qM(%fct(0HE8&beS;brC7H&Z3h!2g?xw z5tu^2?mJwE=Z$kaZg6XF&_ej`_UkA#c>hpHr!!xNbY14@5R^~^wjp5m9WI?Ws;_mw zr_+8NRo~rhzK~8wy$wZtC{W_|?yW4yrosN1P(sh}q zLr_8y*p-0(KKkZ2yWi7kzmA$;+?}S7PN%&N>AK9*At<2;Y(v2AJ6$3m0wVBh1h#pG zs}T`+3jzCuM)=rcXKwM+6V5GfB-;ipgf{oo@P7Ckv=E@}*HLKj{-KagXTA>Uy3ErdD4_^!L%{AkTz2r#d87Hw?)P-s zucPJ{cc&?&(`m0mx-Ro{2udgd+Yqq(4%Zvc8~FDNL9F;{_Io<**U^ga{iB>h`Vp>? z;B`pXWgh8EF(UAr1nj=U^~UqYJ>S}XPpADly5~iH zcHiMTJa1ILLomO?s&i}SgxT@TyhRlgYTzX{g<%$9VIF?ef-lD|IolJQsv|3#Kj_6x zRF0UAgDDdhk0I8EoF2xrSQ0XHd@T1E8zMMNc}_P^1S2iP21tPjSeg!6#%$$SKs9B4 zUXEZF71F#G8)Xr49%gRF%M<|-xK62$W> zc%*{p&mwF@eAGgx;E}!ViK#lW-2*osx*l;t7rZ2I!NEDw9DF#^wN1gSv<2j;>~!*U zg0X53q}-{umYwW-3`erIcpe@Gk03=1XNGwwI$ze|S_O!J2%IBe_Z_Yi=MCSqf6G_5 zHm|B4L5P9iHk&2_`m+cd5hq%hxcf+jpT<-jc^)o4>p>@nagkv*3=s(*0#hTUBAA!E z&d#}DtlAQ3hKznQ!0en0#;QKjPHo6giIL3JTKOU%0_OG4cmK57k@%`3tVR70&DMO@e&T}+ENqsCuA63_ z@~|p6_%`%U*v?EiuCo&YxROpVR&9gSI^uqr1DXvnUqNb{`o3J%pg#Pv2J5qcyS}=$c~#DX*)U~8d~!W-EXK6|gn3$ww}4G&ZGF1t{=%vwUX>Y+ zIGh2xqEY#_5L0+E<=^DzZcZRaInb|fCbl^Acq zGyGL9{TJ#g?HB#3BQD8X;6_Fq&H&9xV4A4>FlAv?B>R=l*_w`-{>gc=^C$K{|G5p) z458^{CfNa@bE_)zFJI-eorJN@_*cxISDV7Y1D)ZoSg^7R&oFHKL9j^X)!;;%0!ardnGlRp! z&aM3?-+z{8$5UYo1i0XhLL{cJ7S5;QqZX<%KHYR_{6`&uIZ7IF5NslR1$jAwtErHI zc&%mbZoH;vKm8Y_UU>AEJ&244}jpwQCoC`jI6dR3*&X+Z^Trnab0w)OAeTVDt zym2DGE!p7K-k^o>-R;*=Xz>1_kWOd54(Yng(;+CK2y8>Z?mJvMZ&Y9Feov?UI;y_A z+k7FNj(Q!^b(yC_P(l&dhJf97xOCpAzSjMoPWyFKeRsF{LOLDwI;86|Plup{BCsm~ z{eAS!Z+5?@(|#Q_zqmV1A)QWp9ny7~r$bOe5!i-+-FLb~Km90 z3ytux$Ijg1rzf0S-bl6$S_p0K*HLKj{-KagXTA>Uy3ErdD4_^!L%{x-4gT2KWBQ#q zJ>mWEH)tV1+pnY0;Qd1(oz8q6(sh}qLr_8y*oJ`Jcew1}q4P%bo89l}v|mTfFYZoL zNT<_Yhjd-$=@67q1hyey_Z_Y`o;UFC7lK&v)$I3l+OMM(-}^^7h4dp_Bf;yCuFE{q zmtsWVHwoB%hwF{!jeEYe{hm(yb#%|4gw8HP+JSR!Y8}#bna_2qRU+^U1nj=Ub$H&$ zzeC7QhSs^Y^YY+e=)#l3%zK$*v%z-?oEDNM{ zfhik82N9-_!NV{M-vwsF5XlkWaWLg#1ElC0SegzR$86~CsI_>+TeHk%j`_@*C{@Q`&_>r))Snv2;3Y3?pN z+_mc*6C578&Q4C-L5kqgmMGS^M(rgtT8ARvqQaxeM2WP8HnTBIjf{Jj=f6YO3k8S?Q3|!#csJXJe$?KKf;m z1A@at*V*BOuKP$mW;`3`AIZ$|(jp)N*9q8thpT_y$j^uDH0!Bu?YulYNXS!W+AuhX z^jQoM_OBKH{*hFFM@6!0tO- zhvyBu&Hdvw{2BfApPj0zTboz8&JL&LSrotltosR(3WC>WJ>CMZ9Zb$kZqrpqTtLN; z`^qt#!E_Er08hb$;91rPaKTfi@yWATXfdY!CroyDDhKl{FW&~KHZf#!fIy;<) zXWh>Z;`<4)5CRLEV!Q=jKA4=B+@`CJxPXcw_myKfgXtWM0G@&g!LzIp;DV=EhcF&` zSSOgLaxl+w+HH_#uuUg($PW1MlmAM%#Qv^g{3IV(C za2=jE>_LH#?GEjts;6^nBLmi+bFiF+r3%BG+yY>RcwT$41y1!4eX%1zLp#~2rV!}@ zVJ7Jha*Q=MR6wFlDNW_G+^_%6)M4tVk`OvJ+pqC$#=*t(fN zWaD9#nPa3yKm_Izu=@^I|GaT}-wkf<4O$3a-+mp12JasV>2&7nkgm%-9fA^yz%~Tz zzQd*SM)kGs_jKB?qw2f6%@@+?sMjG~mw7q_B@}^e2-tmxOXrR1Yu)eZv|mTncXyjF zq|;HaL%J^WbO=f)0=p8>-$&p4X7_tK?blKBi@Vbl(&@Crr(Lv6W$MhgBAj`{W=N_-ai!5>CD$5U6*+}1SJ%KZ3x(XhszEg zI&U<;+5MhQ`*qa(;_ftsbUN*INY`ba4nYY;U>gE<-{E@Wc_aLre{8totJ&}Av|mRn zzW0xE3h76*$_837uVpv;*hd)HIt3==z2-tmxYw*0mzeB*U7dosuw{~7091LCfE-;&$+HCOM!Kx5Y`JCiR3!LXU zy6T8&02EBr-*hk=L=Lt9BtHypF2|~nCj?^_z6)Ot6GKkRk>-bBL_%zU6g{H%rh}F- zTR9d`O_`sUBiKcSbYyKv6^5P6AyPvT5P?|)?7qYG>3JhOOsbNqTRSiBJDxwsgnc=H zm#_~F!I2@M4X?D2vpvBX>B#G3M6R=Ak!*5<>{lA`IUqX-c2NbeZ;@dboG{Bn*VzeW z*l+`++@?2}9W>5UuCsG47^_B*@}^jLD5}hd3l$&&B5<03-FLY9=MB5B`C~iU5c{%* z>7u%|d5P=ngk3^rj^`=!`QuaOAO;!&Q%y160xus-&P#67RYz7pD4U0_vy)e$k!Ele zpM$f5%q}>9r?MX$9B?vot>~_$jtFP#XdBIMM6XH@~p>O;I)IvdC6_M z>c|V=%CpW+bCri(46c>~6bHaG(e&A@bXe~KQY71EKl zIU74wW{!~-0TGx>!0tO-{qu(H+k8-%>3&sMb!+n~*V#c%p7Kh9gGisn5Md_p$+K{p zV!Q=k?i)2zJ;ba!LV4B#dI=_`%&&Af=8uvnSOi4iBLa5c;rjHvVYfW?Vhz(pb!+ny z*V*AzJnMdT5Z_OTg%DWS6yq)M^1UtqsHA@GNU=%BE{}5XOQ7SaVF!hnYD~4(3_TybV%sDz_P&Ftkf=8uvnSOi4iBLa5c;dYt7*yG(>X=NLEiL zUhXOxM}rfRKlS5$1xYTxSPM@>F&Z46z4NwDS=q zU&WM=Cr=$_#@cbDSTZQ8%!A7nCITXGf`Hw3xJJ$!wgo>`O#7#^b?4Upv-)punUHWK zrn$QE4%gs$sH>$67zo*lF9aZ1mZN89BN4*Z|y3ErdD4_`KNy76P{40YXR(v)4J)QRJXvO#bQBEQK2-isPI;86|kMyM&5%^64cHiN8 z<9XwrZ*9M)(|#S@^CzLRi;#BUoSRyQbY13ioobZ``~m^H?{E#CH|#eFAj2AF5S?2) z|57427`pJxFvCWe4Zg*jgH=96OywiM#FZ8}&vSIu5z_!Dn5cimL9hv=a*gHeS5pY) zgwRz655O#vxWH@}a$24;9~lr6#0E&wBYJN-XdJVZV*%Ba`FS~lT~tV$YY($=@=j(B zlNJFHm`K3xJ6t!PH^Q^Xn(8~=b&d%%IDnV14-LVQA)yVcrxP!Cot>QR3C>7IUT5xT z#0fp-B_Sa1l^srk+IyT9i#{z&xR!?Mly4}vHT!9k?YVu&yk_~cnQO)=hrFZYd_sUBih9icpH0lfqhQ|7z&e*GtcS@070P19$? z)L>>_#Tq-BfbTi|CkJp0G*-b0OKi9e(q@lLzZ;`<4)5CRLEV!Q=jKA4=B+@`CJ zxPXcw_myKf12ivzX`=F*Q_WyDP2=Oc*pRnlGf%;RKpEM|X}3Yjl(USXkrn|Fm`lL!J6wn74cpr9^iTue>|x4=)ve8| zTxW-~@vQsVL3}?U7D8ZQQ;fI3%LkM5lG}9E5f@M~So+J#B`AQ2&@+fhoBc|j!J80IX{KHODn`x0@ zDmxs|$&4@;IZt-5Bu`}r!4P{OMLXVdr*WS0RoMyIIE;f?V~L3oq?|Kr&c?dR%rVj; zAOdp<*nNj<TSm7OXxB3*Ep*ARTfhsaNZefb_pGn4Fizwli!G&mj^;$b2KoFFQsSjZc} z3`v^9DswYfrU;0@6aseN;Tk+|e7f%jxAq1tgl}!XjzWX?4~29(^L0qqWu6W}2}NKV z0(Rfw(s`r$TK9W8?blKD-QDI3>2%cVkgm%-9fA^yz%~TzzQd*SM)kGs_jKB?qw2f6 z%@@+?sMjG~mw7q_B@}^O3Fz;mZ+^4;J)QRJsQJa+X$t9d+Ut<6%RC)|5{ke!1nj=k zB?2NK0>4IJn`gKh5rMZ5uwQ6|k3Dwg7C$}V-10`UZO}q!bH9#4gZB@GbUO2ONY`ba z4nYY;U>gGV&us9=&K}e6#OVp|hrdA!0or~Yg$C~*3h8v_>yWO?JRO1(ioiAm?7qWg z2M?V$n&0exPpADlYJPEdnnF6A_By2NGEaw~gd(sF0lV*Tz45$(f5{KTimztBr_+8N zt@z$Q$|4SX?mJv>Ja63dt?l=8+OMN~{v>pE5z-Evb5rY( zuFHI`Q>_w#Um#%j9j?LihW#c1WJZ3g(7Cnq^59_T!uN%VGFaFw4^6v+RUx4AImwk4 zIL~u*)e+MGD43{!#6hqLq;ier>^G-4G6Z}6U?M)u!gqn$Fm&I3BEI8b%Ebmq(KWC% z9W;*F%CUfI%KW?>!7eJKBWpvdFzjRwks6AC2+Sg2_Z_ZJ&l}-kQk7KQ+Ie~3@%%X^ z?8^bXgneiTjtmKHc%_A$?Fr6EM_wl*ay{aN9`lkAkoT&bu&~O^zAXvE;DlKoy3S50 z!-g9mrB$cuC%Z zgF|FLxHEg0hXYuLoIb??thw?%kml~P!(F@1F~Q-X>+IyT71EKlIU74wW{!~-0TGx> z!0tO-hvyC78aF$H`K&{Q)ve7-TxTcj7&3D_Pq7aTVUf@fygcji7I^Joa$a(qt~&Ap zxbmzAogBv9h1oFVNYgw!IMrOjW~IY+9@Ys)JsTtC_R%kk91t8Hy3P(KbX_4GS(~%5 zQ)T8DX%P^CxdiOK!__};*uLRGVMBa6RaLjPt;H(W*$DwWJ1jn`Sjt1+!mi-Wo9`@ZkW{=EHHF9RxsZ zgESEE2AM#14k_{S!{9@tmH{6Ge+B%F z1kbvk9mMw&Vj%<;HbwPx;^nLl%WLj(r&)ExHF!td*NDRzpg9Rl6P4ebY6i1u8Xw=q zhP)k{c?u2$%E(SmyA4vN#BDkRpfG_CmShK0NM$jm{b!yyyn5S|u&vNE%ka|1lcHiL|Id9l5{BSVspU&=`Tl>%IzrAHb!jYKf?zWJ9 z2%cVkgm%-9fA^yz%~Tz zzQd*SM)kGs_jKB?qw2f6%@@+?sMjG~mw7q_B@}^O3Fz;mZ+^4;J)QRJsQJa+X$t9d z+Ut<6%RC)|5{ke!1nj=kB?2NK0>4IJn`gKh5rMZ5uwQ6|k3Dwg7C$}V-10`UZO}q! zbH9#4gZB@GbUO2ONY`ba4nYY;U>gGV&us9=&K}e6#OVp|hrdA!0or~Yg$C~*3h8v_ z>yWO?JRO1(ioiAm?7qWg2M?V$n&0exPpADlYJPEdnnF6A_By2NGEaw~gd(sF0lV*T zz45$(e`OHFimztBr_+8Nt@z$Q$|4SX?mJv>Ja63dt?l=8 z+OMN~{v>pE5z-Evb5rY(uFHI`Q>_w#Um#%j9j?LihW#c1WJZ3g(7Cnq^59_T!uN%V zGFaFw4^6v+RUx4AImwk4IL~u*)e+MGD43{!#6hqLq;ier>{n9==7i8y1`oh2lDNQZ z7;;*kG9MWb6T}8c(Ia|qI%piTm16=P4wDuE5tvB8?mJwc zo;Sk7q^hdAwe#}6M%10yUq>@fY<;jx0xxS(>!%Zi8CJtW1|tIlo0quGjwN9eIbBp!=JO{9+iW&NavqMiz^kwen-9@dM^;`a zn}@DPoX{pO$y;!6h&-IC;+rnc+wp?}1vE{ct!`~z(tl`hBz810;v)uv7qZEjgC1{z z7Y-)pCAaCSBQJm}&w9|wVccDq4MUEE=9s=|vxmVPz&fn;DGp$bGE8iYv}zgc=YZhw z&~bB5<96-FLY9=MCE{+}a~g3|m#*+Ie|)&>&BFCBZ?Y z&tix$6Zqs=I88C$f-m=tnyDUQRvn={YXQ9k6I159_I~{*f?4nq_)XJi!_;7AUd0+a znt<;){U---3^Z232}^9a4boNK z?7qWw;=EzExqmvvRJXP*#46X>L4XOKbw4|Z?aAxY_jHEg7&aZFi+)R zp5@HjAoZqlo52Y~Ta_K~;VIYIK`=yxl-GJNJFJl^h$?dk(@+FNU?Ks#?{GcvyuptS z*V(CPaHPfX5E{ahgds9lPbZFdogE~3l(^DS?lC)P)~5W!PE(s{kzp!39MH*(Fc&#b zcCaK*We33!dmu$S-g2jLp7K@M3E4P|gIQyVi4mlnGi%Pqy2{Kk(jp)Na|zgehil}# zVY}nuV1hqYVVzqW%dz&HgXJtNRT$>v763EE^V*9oaH@ysiyZ+P+Q|;4Oa!)_;5?O` zDl;NoaG2K+e8h*yPlJ8=9!N8j?0CQMT`)8_9vR|cA_JTtDx_G*8^H`on!_q{Ggzhw zh`gE<-{I1EqxxF+ zdphmcQT5&3<_qa`)a#J0%RC)|5{ke!1nj=UrSnGhweI(H+OMPPySvR7(&?zzAzhbw zIs_#Yfn5pc@1t*iv->@r_Uowm#ocKN>2%ubkgm%-9fA^yz%~TzzSAWFA|L|4Mqry~ zxEc|Gw-B&jXoQbFcIFm8J>lH)MzU?tLTGcpjzWX?4~29(^L0qqWu6W}2}NKV0`|{r z@W;*`)9=LT3Gau$K??!eejSAd?;i^3bmr@juFE_ff)a|rHU#Xx!(|5#oj01_?0!$D z{W@xXad(yWO?e6CZi5`kYJ zVD}xa!}CV)$d9Nz-xBRN3X8kZx z?TCY56O00DU4$^6^(i>~wN=g0X4?q}-AVrd< zs4_Q$Wr~0ZOd(+R9j^X)gSW%u#RNVaz`DA%Z6U&3XU78AM7)b?ihb83PDswf@fK_q z@5M^H+Wfc2-rsANl|-d*66O%LEO);A!bxcHiL|IdAxOxT#%W*es^HwRu&}!?V1p z`S>)qGZO(Ouofm(!9f_Nf*5as7apeN;G1>T5trfha~C5HXMpA;FiliGrYry-UI=Zo z9gSHC&KwpZ2BH&;wGi7N^^O<MBq9B zyYFzFIB!@1c6ax0@aop)Rj#wc4dxi0WzBiq&rUy{XHAc{zzh4Ea^(HG>WC}Jz(*X; z09~P|d|R0JLN*qhq0-3a3v*^(_-QbT*#;?7LU#d67=9gTr%s-N9{I8mEFl6SFol5K zcewiJ4SpsE&BI((b!+n~*Pl9hFLyXkyhS&os+L=o!1I!M#hPZ+hNt&X{+zgf}0wOSl zfZcbv`sWSX&K?o|30s>P93FOV?LYbcv;5FOfD7IT+NPjgWQPO#vle-=1>Wl+`eH{8 zpSfj+JLO38JHcTJLl>OWwfSr!o=rrCB(s7&{~ky)lk9+Pp32U-;3-J4brzj3D+kLF z0TGx&!0tO-hv$uRJ8p1mZ_q;c?)K{_GsH>$67 zzo*lF9aZ1mZN89BN4*Z|y3ErdD4_^!L%{AkTsm)5U+aEPr~NvrzPsCeA)StT9ny7~ zr$bOe5!jW0{yzHVH@n}{X}^w|U)-IhkWQz)4(Yng(;+CK2y8>Z?z`q?|J;}Pvwk+W zkSPKpAOhbau+1}EjflWo2-q()!pClZJ7)aXc^}L678+HZ#-y5hslQ)GU;iS6boy7Y z4(Yng(;+CK2y8>Z{+SK_*xAGG#Cd0pzcOubYj4m(_!GNdN1?&{heA4?`8uTQGEaw~ zgd(sF0lV*T*}=ol8~Xi5_yWO?JRO1(ioiAm?7qW=^TvyQ zzhOtC@LBQI?DurqucH;;`$sv2^dnp&!RwH&%RJJTVnpCK3D|vy3+D}cgHJqiShlyb z-S6qNUq@g6GbW_dzk+p0*JYj#K?y}*8v=IU;lg>NdDsZQM(`Mz%_VMjZfz_F&!&S} z7da*euw(JOkf%&zHuyZOT0kWs34BfxVtDF)J<<^h&h0dvs*8_;EeZDZgn2n{)DPy_ zoF_OR1#=CqH$Vy?F3@8j!+wrrCoJSCOX5S0L1q^hk%nwMtTJt zo&fp$kWF@2hqX4raDG$p%OR2ej7o*>s(qW`@IHth#~}Nt&X{ z+zgf}0wOSlfZcbvaNY<91`O>%0UbnVs=BrF(6WA_V)enr-?`Gn5^MzJwRD{xsNYwx4?-4Jf?3 zL(>B|jP+NL;(KX|&X?7Umni}waGikNcerrguxCX$PGDF~RlY3@Paf3FzU%CG@Q9DJ zCOE!7%=>a4=<4aj8$m;at=UKBZ;7fSuZK&`Iy=o(9`;di&cl2-75t`Yv%%+~>+Cdh z9tLC8#z>hJ`epNw(nrDA;tEnEX^MX4<`S7AAOaT&*nNi!=M9`Ln!+9(?AtInJZrkT zwQUuOcby#%VBZ`Y`UlH{_%q)QGdHJ&8B+PM(*pLwLQYj_1b<6Z9ibjn4q;QSv*WAS z&v~%C6P%|wC+lW@-@?NDgBbTQwArQ;0(^KFj8)qp4RG?1$*^`-?6|g{c`7>yhPZ+h zNt)s?b90qU5fFhZ1nj=Uh4Y3z3c{Ho40Awsu!J8hTq^snvx9g{LD&>)L}ovPVF;0z za5mG`)2W%EX&!D7c3eHII^uo3k=#ypu!^VLWQVoQhG8>_#o&Vg7B-7v)^H#!*mcM0 zOkp`Th1dqEca$LnKL>Q2&XlF)S@1M*1u5srdL(mRB}W8A;0gh|?{ML~fulkt?D-I; zvV(x?*5-$d>+GO4OhMQbYeZ&0gkcDgmvA=I<1K_#<6DFsR}ZU>cwa9*w~!sI;wd-T zVQsTv*i2Hz90rGlJanC%PR>p+R&9gSJ34GR2V@6u@>F&Z3~>c1k~GCg=H^0~A|L{% z3D|vy3+D}c6yUS~!KUl%Aee=PHOph)b#{2+NQ}pG9&?(*VCFF1x_UZs5@-nIG{--j z^SgSyBdZ*xy3P&)Oz>?LyO@s))v5@e+8DoVIdD)X9vmiRCW*yu?JGL14<@b zW6A}auCs$Bc`7>yhPZ+hNt&X{+zgf}0wOSlfZcbvaNgk40&9Cj_y^`6qj5e#Oy}0d za`X}$3|)8_Oson50lW$^W}5b&Fq;l$s}^`81beEyb>5Me+^nmPn#H3{6d4>0T_DT_ zX2Y-6sWhHO0S zWacnw5fFii1nj=Uh4Y3z2XI=rE-c%`g1?e#zo*lF9ew2w25%~)Ok;{(hjd-$DUBX_h;TkjtGc=2z-mcHqUT1A_8wAV874^AFDh# z7l+dmUaaTD@(o%DUGLXXXz>1_kWOd56saZGM+8LRP6GDNZ1BgP7`{83SM>CRSBg2e zc7ql|dt!{$-{;F>o8Qe_BsZc)F6)3pZ#X^uAw5 zp~3ryLOPxKQly;x$DjXdUj*(Xzz+((4cR}frzbpJ$?1jbTJV27=5%4F7hdnkD#zz^ z89Ob!j&vs)Q+ip7l#}22u+?57@Z$vd;lQ^c`=|Bvgr_Sxy>ML%_R2n8)s=;FJNi}^ zR|rgBI~VEn^4^$mDN;`UWAm@t!nVhIOB=U`t8 z--YMrRZrG~NOPynt`Www-o8&Epef9R|72+W+WJWITJM@0&kj~`@;e{4+Dim}oB-}Y z6MP%8ZyGl;1e+lk!;yp@>}hjyI1tzu4g{u9z;&^r1ur<44abCQ{~7wKrVt$B1BAhj zkPQN9D<}KDHTyXUW?f*2NKf+QpMyxzLhdm;9?ZTuK7<(rhKR(DuM;03&5dV=32^cs zfBvg|5xA2;bsMs88uu@R2ZUi*#rJiXYA$5cH5>>O0|#QHq)^7;a77DVFqeJkaByf7 zQxG8_^f=fNvOypZJFfX>-ksxZHUwif_}K3GVh|}BLCcv291rG5Ou-BSLtp#qpC2L3 zjc12xaPm7Jw%SVsew;vc8?tX2_b-G8gkf04_jQ=67MhPwwXX$KQ|yNw&ka9q!E5uq zsyc&@n)_>Q79T8W3f|o{{~YYd_Cg-)>n5fwfSv3k0~f$ckO9JG`NInzs|S&yerqu3 z?05kC=J*h15H{owws@oX2q|}M+Ci}y2ypTrfBvg|5xA28--&!1vhVk=JAON3HVomr z7)cnGV2J02JG@b6%7Qr(*-nd3Tj1TRI)jgzN7m+Gtb*`n!w>}e9oZ`XAl`;SR}L@C zF;x;oy1>xlS!4MF#R;Tnt=~1myz3B*+2FqjUG;5#gcKamcy@RrPJZXZR(pxSj}xeF zL-uhOv+w}Eufq}>@_ij9huEgbGU-V6GL=&v2@C}bNfxEVGvRWtwB%|WDtbuup2gUj~_n~O9s;pBHdY_*pN z{5S!=6Ztk|-!z_k5Nw8E3`Y`rFsH@xN_a4qKv+EMYWYY0q80{g7-klFwERu1t9$dah*j%K62`B&Y=fBz)fjbHCoyfN#`=;^SGl5Tt$-_=U z&pDooliMm^?k1AB&ym;lq86?fh79O>kVB`V!3@|M0yV&K!3hxq5rW@497H)-uLS$G(|UTs)0LcFxIqh{_x(Bw4ci{`^<_BJf25`1|N*)i6Eb ztis0gY|uhzcE657gZB@GbUO2;NS7v`jzS4VU=IRz-{~U)A|L`Hu!z7OZwhrG0@n%H zuNL(Y0TB=Z5m-dv`cqmNL|_jB)BlH8B@_V>5CIVYfj!<7>Ousr6TnR&Ap#;G0wOS- z!1brJGKjz)1g76yN+<#%AOa!)0(-nE)P)F$fCz|y2#A0Ph=2$@p8yWw5+Wc1A|L|O z2|WKTpbAAm1VlgtL_h>YKmYKmYKmY zKm^aRTA546x(JJuka^b~)tmkTOD@&#WpGsi6pnfCz|y2#gc3R~s%nd+59| zj&5C~&Kv94DzgZPfCz}dR|w#+VM6DPuY3i0Q=K<56FDLv0wN#+uO^`L#sj}Toi`r% zrKltk5CIVofhz>Y&l~@s5AO&&m^{q7^Ga84Mji%L_h>Y z;1vWuI&YvOd(XOtuwkXKibeHG{U`}1Jg3LY$c4>va^+Q3IZ}=Yh=2%)fC#*TfX*9- zUlX4zJlGxfS#u00A6ez`I&UyHX%P?s5fFh52+JZH`8*Xms;UZM z8j64jh=2%)z*`7>blyNycvnK$RHdCI0cue@1`(Cmd|*W-|t6 zwF*ffs;UqmAp#;G0wN#+?;@b{M)Ui^p#rmg$7lO7o{D2wVK|_HkN2N*g3X%AFYKm^7K=)5t`>b6LoH*Q0%jYL2ML_h@Y zA)xcdJ)A$>L_h>Y;B^G__t8J$E7N)73EzTh5CIVo0TGx;fPcRs{Tu=l zzhb2l0TB=Z5fFi|6R=-sgwH+y<@%mo4)H#uj8Nw@s|rPGC;}oN0wN#+;{^Ws_m7=D z?s?hWv&$iehm;ZOd}dXlNDW0m1VlgtL|~kNz1ncu(L?8radhh3LVR+&XW1Vlgt zzCr+p4HG(VeB~?1o9eugnaB|V5fA|pcr^i?Hy-%)>Adm4FGVGZfCz|y2wWlX(Rl;^ zc5dvL9ZdB_=aqUoXMe}$>_=tf!UmnNbzT($I#q>84Mji%L_h>Y;1vYM&l~oZL`SZ( zgMdR(y;85_Jlr$~jF*uM8*yw$4hzFDh4QMZ5FjA}A|L`HAOi0qpz}ua`{I*;>vN7J z=Y?SyrcjB_8$cl;0wN#+BCrPmoj01_BcB9ZpL0BUUYmU`L+1^qAuR$TAOa$=0fCF> z4SSRN=Tj8bE7h_g6>FGtMW>8^H}>~>LbD?=R&Zz}uL@07RfRAOML+~ZKmfCcm^)U^@xMr5e#8dtPyFVs)}QzML+~ZKmru-k8|PLtd#5DIuj`4Mji%L_h>Y zV4Q%?8{@2Qi`04JHq_ck1VlgtMBp9*I&a*=`J-KQ-uMWYf<-_CL_h>yM?ilc{S&@2 zoj0EFEvN<&5CIVofr$k8_Z!mBAu#bPRw@w?0TB=Z5%@X*`-MjM-1A?q@7d)L??cK6 zbw0DIP^5+;AOa#F0wOR@;Gcj0*xBQrm)$+P9CCO_8KKT+RuziWPy|Fk1Vlgt#tGP~ z4VN7~blw<8w=PoWjdg65Sp-Bt1VrE~1aR0eq4UO9zJk1|&KsGD91#!!5fFh_6VQ3% zfnT4_8xQYKm;C0VEnwnX8_mP8E>%vO6APsIZs4ZWpDviv*%()ima*{S*sWk5CIVo0TFm0 zfh*??ZiipK>{q(~O8qojwacMjmB9tLp5+{tWC2xGBWo2S0wN#+A|L_}B%t#~^Glg^ zy2yE&+XYkSjQ~VL5fA|p5P`Q7xN_b&_cC>2{Z}eyUP`!AhSlI76!6FR&p%so&OyRT zbgHVB$QJ<-5CIVofhQBVc;3h_+`(r1uT)DrnCD_xRR$N}dX_U%a8=dFTE&Qf2#A0P zh`<90Ts&`_?x_Dt<(K>EEk+hrWpDvHZ;X&sj0lK;2#A0PbO=1{ykReQ|8#1eIHmK( zM3_n?0wN#+A|L`4f${T(W%zRz`1k+Vf#Hc0LiM8eIxS&U@La!B2D-zJvm7L>M5n51 ziF^?d0TB=Z5qL6zkIowt8+php^&w>hu+OY26se&Ih=2%)fC!8e(0OB=)oqbFZ`_7j z8;O7jh=2&(LqO+^dpLizi_RM#;Zm>&h=2%)!0QO;@1uXhSElpE6TSu2AOa#F0wOSx z0RMhN`Z)w9e#J^90wN#+A|L`^Ct$zO2%mfY%k@3G9O8XQ8KKT+RuziWPy|Fk1Vlgt z#tHoM?;ksR-1D-#XO}|`4=E$m`OK<9ks6AC2#A0Ph`=}jd$r-RqleBLb$Xz ztul*%2#A0Pe1!lG8zyw#_{vw1H`RF~Gm#?#A|L`H@M;1&Z#?kp(|O~8Uy4c+0TB=Z z5x7F&qw_}o7kc~FC;s*0omXnL%at~(wI7v{3p?jj#lY`Wg%}AD5CIVo0TFl+f${SO zA1YW|vtc;We)US_RIEpGo`@MQgNt!}&KW7Ps%m7dVnjd$L_h>Y;DH3LoHy)+%b$F050ARpKAd z{Acvne_nA$>a407S*sWk5CIVo0TFm00i8FRUkVNtn4RSyVMpk^(Sf5W5fA|p5P>%m zxOm>MmjC)M{D1x{|2To_mCC7Dk7xcUa-z~lInZY?6c3!D}Hu*T`;ifs@ zqcU<~=bT(da5`0mNDW0m1VlgtMBo(!K00qq?C2q{)Q6N2z&^98P^5+;AOa#F0wOR@ zKE{rb_!TRa2#A0Ph=2%uoq+v9BYf`pFW2|%a)|dKWrRAP zSyd=fLlF=G5fA|p7$@-0zklrPanH-{o?Q+(Jfw_J=QFDcMQSJlA|L`HAOhnA?A3VH_Ft)-c|7Nd$f^u3plbG9%t(<{RU>N^BLX5I0wN#+4W~+8N^!sJ_@?6X;rz&rxs%ou#5fA|p5CIW*AOW2>4!@LHr;D7Y z+FIw0ii~^_5CIVoftM1ve%`Rx==hryl=`pK6A6*|BT<#X1-PE&jFeYZHL_MQA|L`H zAOa%rKmym#8{QPZjz`+;zfwQVHnL+grYgeA-PpG z#R*B8!>X!guuKsU0TB=Z5qLg<@$-iD^5-n@pEqxI23zjGQuE7wFzu&dRT=2Z1^0f@ z8L6YKm zh=2%)z(fN4`wiCiPes~r^-tbWnh8w&ij_(PL_h>YKm@){z4ESNLvL=^s6^JYH;B@!bAb*94xOyRaF%)Uj#%z1Vlgt z9!{Wn-muqbI3C!LP1o$?_`XxUQY|Nlv4%NUjFjO!axt#YIV1H~RgJ7wj0lK;2#A0P zJdi;1ywN-=*y|NOGz6vw1;4Br3;V1&W}@!A**m-EsdG-%NT;f5iF^?d0TB=Z5qL6z z=6S>3p843oW~KA0%Bfzd{NiT4h+$QRZ&wwN{c}#$RKKcfm3$Ep0TB=Z5qKYoMJbbgG1_-Of^*Lvxk;AG+k|;(5L_h>YKm?vcpn2Y~ zH)%d9u*upZvy(HhQ@v6x58$wdIagF=@Gf44{lv#-F*GsmaOO&nR8_5&F9ISU0wN#+ z4&6BLX5I0wN#+ z4_!WLFEkh2Py=y%@ip$rUNSPkc#k>Wd5jVxD;2#A0Ph=2$@ zjX?9fVQ^5WQbQ3C0TB=Z5f~@XJa0@qS5&F&NHbpKy2xj~ z*`Ha}x^F?5ML+~ZKm@iY&^&MG_Z#2+-gVyiE`RMV0wN#+BCwi(|9$k;FC`}W`u#@d ztJHa;14mOLAOa#F0&gV1zu$ni!+`14Ke3%eCh*2TOR8A}L_h>YKm;lR_6v>hvB==8 z7~ZqXVdW1gBiC7dU-Csj1VlgtMBt4C{`vQhz4*L~zuS{X_v~_5^h3(Xb)v90{)tk} zA|L`HAOa$g3Gi?7?Zt;T9s6_jJ-Zy%{E#woom^P{zT}922#A0Ph`<{O@cWM6bnMU7 z_v~_5^FzwWb#h^E{1c^`ML+~ZKm{8{o?T{S$-$nfEKQN07a1aK^MW+mG;gLMd z*)W@@!j6MOF6@neqExd8h=2%)fCyv){1W6h9s8#Ft%@m_a7M()E}jSZAI%RqbG0e&I!n~r_c%@-^CA-*#l*~OQKO>Gz)>;m7Me?|T6pDzuLuR1IP zIU$f74rg|aDb)6<;KK6vB}W8AKmuIwa{#g~;(C7xuYKm;-Yeh>1Sj(yX3u|lvJg8RdfT|5Kt z6>^5DFbu)XVZRJc$U3CzOohntAs3dvFF7J00wN#+BJf56{2t^t9s8#7Vl{zJh#4Gq zcJYly@>>jV7lu4l=}s9TTNqXeXZc*%8~;S9W)Tnp5fA|p$OQN;$!|LL=jwZQIjs31 zW#l@!u>5_=5djep0TB>^Hxl6Y9lz<=pR4cL<*??5l#%P?!ru5NN;Qjs2#A0Ph(IR5 z?>m0eu|HSev&&)44=E$p$%WiHv+gP75djep0TIXqe&Ic$9z|e;K)yTVh=2%)fC$VY zF!CH$j0lK;2#A0Ph=2%)fCz}dbpo@_@X8|sA|L`HkO^FWN-Kj1h=2%)fCz|y2#A0P zh=2%)fCz|y2#A0Ph=2%)fCz|y2#A0Ph=2%)fCz|y2#A0Ph=2%)fCz|y2#A0Ph=2%) zfCz|y2#A0Ph=2%)fCz|y2#A0Ph=2%)z-j{d|65#+2>cF#)%Tb3i+~7-fCxB&{8upB zyJj0W+w}6-Mjl((;Gf~Q*FV^%!bCs>MBwWL!e7B`$B&(!z}xil*hU^(*x;S@_WB3g zRG0{efCzk@fIV+<+1W$qjjw+r%>o|#T6}C_O^n%md;Pg1IU*neBJfNCIBb}>;k@yW z^jV5!>Dz=`S=xmqU)so(;vZYsU{i0ef3Qu3iGT=*z}E@b^A^_)=Z%~Dz3pvcXOE?= z-PXvbT{H{BNzAkP5Sat35Nu%~9t&59X8kKRQce*N0TK9d0`|Pcb$H&WUJd*P8HowZ zvBZVXvdQu6o93yktG5X!u~nQ0`b11FV3t!g;`vcChF*NwJ%okXbHh$y*va! z&|G!V?9_iTvzCj12#A0PFadks;_9C_@cOXj`PDG)@b0cTGiKSWG=eKpy-hfwt>vNX zb52#pb-!xFGv{ivZw`lDFUd2E6o!2vyci6#m{s0ko__s@%M~C3A|L`HFi60jx42fE zH@FPER@gM%^n-~ZL`c#ccHSnOC+l-gvxX^VrxDA~)$(@k+fV**z;!)RnC+g6gc)jc z|9WAA8T$1PCQ+COh=2%)z###9-s1YH^M;YZs|_NUconh_-CSj}D?a_#B3Ht@yN_82 zj=89th1o{^a|G;pi|hJ%gI^Q;Lh;&omaA?0!Nd@PGgP{In^+QjY^`bk z>B6&dz+nt8^yPDZR*j(4=60yc1%}Pwb7r%!u#pXeV|%%SpB%vYTvg+%n)Qz_SELAt zfCz}dAOU;c;`*KQMu2nY3odLuIPAX`tNPhD&BMWc55t;;`Ck6hGWfn>cQ&&=+;>($ zv;JAhl}7|bKmO+Lz5?X}de8nMd#gWYXdX`VvNMNt*z zX?;iR3t_W7WjcQ@7B;xNU;khdg^7R&h=2$j60qkjuKsz$QsJe5wC5ZwcY!1>vdQty zU=CnC_%^Yeyy}6v-$onh>;EW~f<-_CL_h>O z1nhZ>>+rnM$@9#qZQdr2ZKPS49T@PjKNzO*$Afj4%0sMLCz|!I+fJE9Km~8 z(2j;8AOa%r76SVF=%4vbJ@&Qu*unjdn1t4joanZVcYK@}hZ zA|L|4K)`;X5kB_n*{1PrdUou)#a)?e!0~sW1@`0TK8*0ejx!vV(`t8(;rMngu-ewfNY=ni#YB_WE;2azsD` zMBteOaM&<$!+8V$S_X)vSibl+L4)DnIB~AuFE-LI__2lc%f{^6>qjFJA|L`H@Nfe5 zyv23HdE;gp4|$thKXN>zk^J>_3TvLY+_XH-1Vhf;G&x|R?$keV7o`#b5fA|pu;(qV z!}Er}2>eaq=$cNTnqzVRJIL<~dCD|qgWnu>-X^)KDGry1glsnJJT#{_a=7DQK))~~ zaRSU?L}U3n(W!skrphb=A|L`kNWh-AxccXf{DR1i0c0}_!xU%---j?EJU$GOq$#Sm z2`6zq-N^}?6%Lwn8yVbmB&;gT)-r)S3{L(QMs~j*)2aV@a%B(!5fA|p00Dd6;(Gph zJ zvi>vQ4l~z-Av`B%sC4x<$*HpAyOxx!WXHjneqpG= zvw0<`$3*8dSir@ws{V^z7YhQp$3l0VVH%;F(Dy_ z)!W2U;p4#=nt+2mZeq%OI41mqRW@YJvq<=<=rj^iVR!RgXD2MVGOP;o-TMV_VW^hH zmBI$scIqF@pfC{-0TB>^5d!wS#r0F?jQ}US`)rn->b=P^o-jLMqjSURwV1bK$8~nj z)zDm36=uPCUv@%39yYg|Zg%RQzLye;fCz}dFB8CF!^Fh%h9Mn)*^Ru0LJacvzq{&f zGLnsBT=yNXgk$=(eKb4L$VidX%WD>9yWnGOLPIQNH3jTPNfaysA|L`Ha7e)37r6T8 z4NDc?7ui983*Q}PRSW`n6@tz5jo`R&KbT?Id>dL!-Z48IhO`KC2SXPy5kE^*jaYuv zfW1Z>1YZ>W!Z^8A#Y5AmvnfLGqG6~0MLR032#A0P{3Zc=-r_nuZ@doCHgA*1Hqt4K z4;ZYQe~JzRnyapxo%*jQR|XLf0TB=Z5U}ShE}b`k}&C{g$;g> zZ?Au_O@)bo2#CPf3E1;imk9hafv?|#DnJB8Km>k)fc-)veC*Y;P2=12^4LZmTiD>A z;kVa6*rvinKmjdnd+2D_zJ$8BmZ_~?T8+mMDgLl^3>mO`WVIm*`BJgzr_PoVq z2M?V$zW$9g3wZ2n@v((9F=q4a_2-V{h=2%)z%vQpuwmkc^G5zRJ1xbs^lfryFH0M_ z@)bO`u)(I@UjJa53KIbl5P`1~u;(qV8_pXy_q)y8^-yvYnTU>|d4ZIh?Cp$i6{$UIP@)9_n--bvCffyIfpPjdfXXb3# z$y-!0VRuf8B)-;$n1w)0$b;dOMv!fys0ur57B!4Rz> ztAF0$_k!!}04b&*Y>G7^A;K&VO=Ae*3&RlETvTrpUgbJFNQEf~n_`Vfh%n1T(-=bd z!Z1WO6H^-DgtPQvVQ31%x3-}>)z4WK_VZNr_g86F1VlgtMBq~b_PoV){k-w7cgTN! zgkt>75=;!kY&EQW-iGHtPZTCx@-mRsHLBRAvzn0TK930`|PcHRZhF82$ATkTy-kgxP9X`N+efdYf<( z*Bytaki2PDvmqEm2wxb6$Y!EygkyX;Ct=Nz6LnP>w$38#?g9B{2wOC)>R+^-(u#lx zh``Shu;(qV>*o!_$S)2I9WP!zP1<1=Llgc%l0U{@|Jh6hvwEBGLf6@`Bw?xL_h=v3E1-%*P`>r z$ote^I{fNk&AkLa3^~$t^)}&EuCrsy!;}s22^;ayVzAbIcQ~f$S78?1X(W`yNm%FI zr#Q{Ryrj@$F2)@MyMQ^Ryu&2T`VUtrKmgk`fIV+=Eel8`^-oH9ID7?+A7U0^t+yu&0_{f7$`AOa#F0wVAc0ejx!>Yq0( zt-TBUgDw6T@t>nG-(wIE7IFq?EP=ps#K5T%BGN?XZGt?A&yG)-4}ln%SZ*SlaGDF* zL?kDKt{Q1(fQjYnM5i#@6qN+Q_1F}KtYIz{RsBmhRdNv!0TK8?0`|Pcb$H%*9iMI9 zCXa2TSy<=TfGHFB;Lnvg(D#UD{r7CGT|__xMBt|g*z*>b&Kr;Y>L2@Bd~9KZU*+5D zA8b=$A|L`H@O1(>Y?#n_Y;1>wkFEql(UOn41zD+NW zZRD|q4gMK^d;NoLDog}KKm@){!2X#H{@B@Lrzh|>y*##&#}+ntXT81t!8R2p0wN#+ zUngMCTU>VV(0SwQ-$=87$G#RHTUZlgHs4-7ICT=)y;9t1_u@uWT zZjghHuRtFv*yS}x~hNCc1kM(A|L`kOTeDDxDL-7{=VQh!Z|0?MxJJJ zn9Z=94NmnoK|(~j2tI~cgoUezRU=i|RxoO|7$34TtKh1zYOmm9n8mCL`+2JR`>Ql7 z0wN#+BJe2zd*0&epEvMEuq|Alb8>~8rwS{r;Gy0)MGX>Pa9tQzqh ztt4!nb#@SZT~vkfro2n=dFa}H`iEDo(^dWJc2s5&5CIYRO#=43#dZC>!3^!KVMG7v zKI(k6nEbPA)`R$x_c1{#f zEvX8_ra?4^ZswoWrW5_D{)t;Cl?aG{2#A0Yz+uD0tn-GwIQ-pV`Ca?Z3OIr}V8m?3 zaFXh6f`vg~m@D@w{>dAy)>R|EZzvnZ;vUgy z#Op*ET$}6cAo#lI6xK|RVodPIf^8UnHZ#mMtNQ2eqHH1{0wN#+_PoW_KW`W-ydc2s zoP*^M$m1^^_p_NDWN3=c+k{gEja25F_E|R(iI{strxCA^%g9A$hvTp4PGQ(I3+!l9 zraiz-1S4jt=+wV-UnLg-5fFi2BVf;4T!-h4*TLz$P5e#Q?}%eq_gAf$?KHAtyYZZz z!bXU34D0a%E=G3hznEFeML+~ZKm?e8J#TUS)Omv;JYPTdwfNY=2EWs{*FV^%!bCs> zMBwWLaM&=R^TyY|j;esiz7`)_SVc1UZ?8YJqoD|hfC#*Wfc`%EXMR(UeJwt=u)*)~ z?e!0~sW1@`0TK8*0ejx+5`kYP@b!C81&DwMh`=upuwQ6|kG*=fX?&Yr9^1%c3mg11 z{Py|>+fo zu)#l9Z?Au_O@)bo2#CPf3E1-%*A3^5oBQ47ZSvSgMhdeNX7hV@ALmbx3B%^XiRMWC z6Sq?;5fA|p_*nw>yv22R-pKEQ;9%&&slu!vBfvyh0>}IuRwabrd7Ff6VHnCl!f%O@ zMo=4i={T6WD4KXQOGUH(r8_FQ2#A0P{3Zc=-s0+?H~8(~y6-s8 z9FsZcm=P!E$xih)8Ofhxa{k+#$2L+GW@G>`3+Lv3{&^c!+o)6jon>e*5fA|p*q(qr zZ*g5eZx}ATTr#?9ihX|jc!tW!`Lk2KO+MW*XTI5~8sRc3P`O!Nby4>VycSV5>Zu$ATo;FhfnnZ@sUnQcykxp_SpW1Ll~4pkKm>l101g`_W}P>TB;Fbj zYzEXhX2c0en!}N|iSIRQ$7UJV&3+?RJnDzAOe3ZUDkOVX6|Hw+XWOS`0Zk%qstF zey0)C;FX8^Z8keta$SrU7WQ(sZgPd@gke}XcQ{i2+#Quo1Vlgtev^PbZ*eU;ZybWn z@0aXwlKw15j=xRDb8`OM^hhJ#0yk1Q6U(j&%Vp$En=x$WCDWa%{^=Vjp$Le82>dt! zd*0%@e%|1hg==;y)HxhWZ@tmChHeEHsWxF16CYD_lW?NV#%@20BS=aqA z#IF#Y`d4hHoFX6sBJi^W?0Ji;f8H=ecrO6gp@RSySjfVrcxXC19MGTT$nm$ycuvlL zo9;AXmHP+9{4xGRH9H8tDEftYa@)Py1yc|f$+}uN%kR`bYYXKO0TB=Z5ikPwyv22R z-gq6cZQdr2ZKP8ejtvm`&ks+r&XJ3pPW_8^R9X=b0TK930`|PcrSryP{|r3#wfNY= z2EWR;*FV^%!bCs>MBwWLaM&=R^TyY|j;esiz7`)_SVc1UZ?8YJqoD|hfC#*Wfc`%E zXMR(UeJwt=u)*)~?e!0~sW1@`0TK8*0ejvyFZ&lPpDWsfiMv5h>ou)**B?e!0~sW1@`0TK8*0sCh*_+w`edjfB9 z*7&Q5ul&C}toTkJ`&xW#VT0eo+v^`}Q(+?9LD>-N&`H*WaD_V)Mn+v~sKE7lew zAOa#Vg+TMXVMl_c$AH_CZ}T>JY$MIWaHRAH|6V3Y9ZKup4AOa%r zvjpsUi|g?B8+ec4zz`e^U3eHwtYTraJT&bNR)v7d4@rDz!PPg5JO~(Z5PY-fycWM( zcE2#EUN!{j0ZDei0A>5%?(rIBb}}dBYz5`Ss1F>%N0GK2mXf$E=du zl8_+`krSeNo7h5p%dSTpEV*A?X=G`&RbjqqU>hLYu=813Hj?-2N0@{Nh=2%)z(oS~ zyv2p{2Hw{!?A3sw>+Dznn}~N&O_|T19Bi}M49S~ATX@JP$Ba0KY3BxvycWG|E}r$= zdXTMO7?;#9raz1Ari*_4)3;MX5fA|p_*nutY?#1#!yf+m_06X1?DS6s9MAdLhla37 zXb4{3(IamY%Nf4?5hpBJJsfX@i)X#4!e(K%FFv-fY5WXjAS{Rwwr<$0f8BP=gV3!Z{Dfe+%%fgTYS-~49TcRk`XQ{7{BUW-;a zK3+^1F0HUxm=%CcQ49;7Ma?kp6wUhYEI@mSfCz}dj}X9N!vxM7_G-v)b2eRPhgb2e z``JN!KOq)EU}0ZWZxhRdkAKk^ny8#F{*mZ3f~vf7)Nej(gv}Mr!ot2b3=Y@eQ=I?~ zp01nqPv1oeML+~ZKm_c0iwozC=1bh(2=HBJ2LUE{*8S`tzMl{aA+WG7EWY^_XMe+CG8uvwVZfRF8N8b7%h#ALx?OLepUr8_FQ2#A0P{3Zb$Hca5WVbA~k z9%s|_IVWd!hqIZ(LuiQRlAO7En^>Okb&oh<$(_TIM!W@Xg!Q6otHOM{P*PP-^D+KI$iwozC{Nl#@-Chm$L4XfGb+DWTCovzH2YpTjZEKrwIJw7+ zIL%b|n4Q-mDn}*R!PIooDa`f)TkPu&rrd{_!{96u{rVSesp>q9xWAz`fx4*C7UjORvSNTOi1VmsK0ejx&%U;uF z?(s8sCr1RBz^q$Ic|<@2L_h>O1nd_Y;bXzUdGBzWULM=XV+$MqLu)PQBLX5I0wS=Q zfc-NY{IRFB@5ts$^)|gcwvopcHvT6TEv&xLlwSlyKm>lA0RLjyp3->yvj0ZCO)rma zDZF+fZBaba?{EsWQu=++*ei0A>5%_Te z{BY*SFZ*xQ+w}6-Mjl((_#anp;m4l?YF`9IKm=A3;D<9me%Uwe|Gz3OO#3IqJZd=7 zODOnHTYvqhPlYza&|(l7G%rUCga>;zHhoq2*>9wo1g0m)7M1Vy_`Zli8QJlvPGO#~ zxzNojxy||%L>?lo#~`vPJQ&*r!7Z%5(Ue~VL_h?7oB%(8`SHuX>HIKfGXy_jIMNH( zi3ZUZ92a5eYhhv)a^@*G5P21rLku>8oDfLvPUZVX<1wEWhBC6~loX~ggg`bpL12hT z6X9aEKmHt0`ywC$BCwhOKY{u2%f4wmy&*gx48y7~4o7<7^0<*oTYR2!hktt7Dzce` zD+zkA5o`y6jjGzJNG^b5*f%{`7|OtM!?Sr{TAkQPo57$SKV+`{S`P5DJY1VrG+ z3GhRhAHVFI#?u?Z1Hv$@`r>e;mr$Pdf={zMo8=`w%s=y5jrPiOyk4b z!8E}>wENiF{jdtNgM}fvFXSyav-_A00>e-eCr6A6`^g{QJ^bVre*8J0_C-JhL|`=m zeggC3mwnUr=ynI9ISi}5IPCY*e-n9+=(Iny9udhpn{XgFzG5}lNOQSw#M^lod`!VX zp2|T$zc7TE2)n?6pPjHfM@~rUU-nJofe+yU zVHj3@aX8XTXu*2%56bQgZHmJx%^9+02N{AGY$VjfnK9)i4{a}w#1Jt}$15Bx%rp2B zWD7%Vhhp4ezrO_WSc1LSK@u0-!jC@()V>IafC#K6z)xU){IYKv4{Zn!2*a@Ii^Gv# zuC&07S9+vSqxvYjZvmhdXpgXN8caSN+&H02io5fFhNC%}(o ze*Cg;8V`I3Hbd|eh9kXro!rr2<^3i7*|5c7@L(gIJe{df%tyn)!Yt>B0&EGdV*OE( z{a|k4$DadgUj#%z1XdH^2Qoi?**A>`{$Hdt!eq8h8m;E>DZF+fZBaba? z{EsWQ@Z-+`wJ!o9AOfoi@WYuOzwEzJZ_~?T8+mMD<9}Sah1EBj@{527h`^5%;D<9m ze%XJc-lmtwHuBiQ#{al-3qSrGQ2Qbv0wQoT0sMXRH}AV*yKQ=TY$J~?Z2XVY1}%&? zt4I+L0TK8j0ejx+BLX5I0wS=8z!x9y+FAr2MZkWgtd9tYfCz}dA_9+k;HwxB_#%Pv z|FK(2z+|)4944kQ?Or7KB`j{BLX5I0wN#+BJeE&|363w B#IpbZ literal 0 HcmV?d00001 diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\277\201\346\231\266\350\276\211/50\351\242\230.txt" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\277\201\346\231\266\350\276\211/50\351\242\230.txt" new file mode 100644 index 0000000..44a3a0a --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\277\201\346\231\266\350\276\211/50\351\242\230.txt" @@ -0,0 +1,415 @@ +-- 练习题目: + + + +-- 1.查询"数学 "课程比" 语文 "课程成绩高的学生的信息及课程分数 + + + +-- 1.1 查询同时存在" 数学 "课程和" 语文 "课程的情况 + + + +-- 1.2 查询存在" 数学 "课程但可能不存在" 语文 "课程的情况(不存在时显示为 null ) + + + +-- 1.3 查询不存在" 数学 "课程但存在" 语文 "课程的情况 + + + +-- 2.查询平均成绩大于等于 60 分的同学的学生编号和学生姓名和平均成绩 + + + +-- 3.查询在 成绩 表存在成绩的学生信息 + + + +-- 4.查询所有同学的学生编号、学生姓名、选课总数、所有课程的总成绩(没成绩的显示为 null ) + + + +-- 4.1 查有成绩的学生信息 + + + +-- 5.查询「李」姓老师的数量 + + + +-- 6.查询学过「张三」老师授课的同学的信息 + + + +-- 7.查询没有学全所有课程的同学的信息 + + + +-- 8.查询至少有一门课与学号为" 01 "的同学所学相同的同学的信息 + + + +-- 9.查询和" 01 "号的同学学习的课程 完全相同的其他同学的信息 + + + +-- 10.查询没学过"张三"老师讲授的任一门课程的学生姓名 + + + +-- 11.查询两门及其以上不及格课程的同学的学号,姓名及其平均成绩 + + + +-- 12.检索" 数学 "课程分数小于 60,按分数降序排列的学生信息 + + + +-- 13.按平均成绩从高到低显示所有学生的所有课程的成绩以及平均成绩 + + + +-- 14.查询各科成绩最高分、最低分和平均分: + + + +-- 15.以如下形式显示:课程 ID,课程 name,最高分,最低分,平均分,及格率,中等率,优良率,优秀率 + +/* + + 及格为>=60,中等为:70-80,优良为:80-90,优秀为:>=90 + + + + 要求输出课程号和选修人数,查询结果按人数降序排列,若人数相同,按课程号升序排列 + + + + 按各科成绩进行排序,并显示排名, Score 重复时保留名次空缺 + +*/ + + + +-- 15.1 按各科成绩进行排序,并显示排名, Score 重复时合并名次 + + + +-- 16.查询学生的总成绩,并进行排名,总分重复时保留名次空缺 + + + +-- 16.1 查询学生的总成绩,并进行排名,总分重复时不保留名次空缺 + + + +-- 17.统计各科成绩各分数段人数:课程编号,课程名称,[100-85],[85-70],[70-60],[60-0] 及所占百分比 + + + +-- 18.查询各科成绩前三名的记录 + + + +-- 19.查询每门课程被选修的学生数 + + + +-- 20.查询出只选修两门课程的学生学号和姓名 + + + +-- 21.查询男生、女生人数 + + + +-- 22.查询名字中含有「风」字的学生信息 + + + +-- 23.查询同名同性学生名单,并统计同名人数 + + + +-- 24.查询 1990 年出生的学生名单 + + + +-- 25.查询每门课程的平均成绩,结果按平均成绩降序排列,平均成绩相同时,按课程编号升序排列 + + + +-- 26.查询平均成绩大于等于 85 的所有学生的学号、姓名和平均成绩 + + + +-- 27.查询课程名称为「数学」,且分数低于 60 的学生姓名和分数 + + + +-- 28.查询所有学生的课程及分数情况(存在学生没成绩,没选课的情况) + + + +-- 29.查询任何一门课程成绩在 70 分以上的姓名、课程名称和分数 + + + +-- 30.查询不及格的课程 + + + +-- 31.查询课程编号为 01 且课程成绩在 80 分以上的学生的学号和姓名 + + + +-- 32.求每门课程的学生人数 + + + +-- 33.成绩不重复,查询选修「张三」老师所授课程的学生中,成绩最高的学生信息及其成绩 + + + +--34.成绩有重复的情况下,查询选修「张三」老师所授课程的学生中,成绩最高的学生信息及其成绩 + + + +-- 35.查询不同课程成绩相同的学生的学生编号、课程编号、学生成绩 + + + +-- 36.查询每门功成绩最好的前两名 + + + +-- 37.统计每门课程的学生选修人数(超过 5 人的课程才统计)。 + + + +-- 38.检索至少选修两门课程的学生学号 + + + +-- 39.查询选修了全部课程的学生信息 + + + +-- 40.查询各学生的年龄,只按年份来算 + + + +-- 41.按照出生日期来算,当前月日 < 出生年月的月日则,年龄减一 + + + +-- 42.查询本周过生日的学生 + + + +-- 43.查询下周过生日的学生 + + + +-- 44.查询本月过生日的学生 + + + +-- 45.查询下月过生日的学生 + +create database ClassicDb + +GO + + + +use ClassicDb + +GO + + + +create table StudentInfo + +( + + Id int PRIMARY key not null IDENTITY, + + StudentCode nvarchar(80), + + StudentName nvarchar(80), + + Birthday date not null, + + Sex nvarchar(2), + + ClassId int not null + +) + + + +GO + + + +-- select * from StudentInfo + + + +insert into StudentInfo (StudentCode,StudentName,Birthday,Sex,ClassId) values('01' , '赵雷' , '1990-01-01' , 'm',1) + +insert into StudentInfo (StudentCode,StudentName,Birthday,Sex,ClassId) values('02' , '钱电' , '1990-12-21' , 'm',1) + +insert into StudentInfo (StudentCode,StudentName,Birthday,Sex,ClassId) values('03' , '孙风' , '1990-12-20' , 'm',1) + +insert into StudentInfo (StudentCode,StudentName,Birthday,Sex,ClassId) values('04' , '李云' , '1990-12-06' , 'm',1) + +insert into StudentInfo (StudentCode,StudentName,Birthday,Sex,ClassId) values('05' , '周梅' , '1991-12-01' , 'f',1) + +insert into StudentInfo (StudentCode,StudentName,Birthday,Sex,ClassId) values('06' , '吴兰' , '1992-01-01' , 'f',1) + +insert into StudentInfo (StudentCode,StudentName,Birthday,Sex,ClassId) values('07' , '郑竹' , '1989-01-01' , 'f',1) + +insert into StudentInfo (StudentCode,StudentName,Birthday,Sex,ClassId) values('09' , '张三' , '2017-12-20' , 'f',1) + +insert into StudentInfo (StudentCode,StudentName,Birthday,Sex,ClassId) values('10' , '李四' , '2017-12-25' , 'f',1) + +insert into StudentInfo (StudentCode,StudentName,Birthday,Sex,ClassId) values('11' , '李四' , '2012-06-06' , 'f',1) + +insert into StudentInfo (StudentCode,StudentName,Birthday,Sex,ClassId) values('12' , '赵六' , '2013-06-13' , 'f',1) + +insert into StudentInfo (StudentCode,StudentName,Birthday,Sex,ClassId) values('13' , '孙七' , '2014-06-01' , 'f',1) + + + + + +GO + + + + + +CREATE TABLE Teachers + +( + + Id int PRIMARY key not null IDENTITY, + + TeacherName nvarchar(80) + +) + + + +go + +-- select * from Teachers + + + +insert into Teachers (TeacherName) values('张三') + +insert into Teachers (TeacherName) values('李四') + +insert into Teachers (TeacherName) values('王五') + + + +GO + + + +create table CourseInfo + +( + + Id int PRIMARY key not null IDENTITY, + + CourseName NVARCHAR(80) not null, + + TeacherId int not null + +) + + + +go + +-- select * from CourseInfo + + + +insert into CourseInfo (CourseName,TeacherId) values( '语文' , 2) + +insert into CourseInfo (CourseName,TeacherId) values( '数学' , 1) + +insert into CourseInfo (CourseName,TeacherId) values( '英语' , 3) + + + +GO + + + +create table StudentCourseScore + +( + + Id int PRIMARY key not null IDENTITY, + + StudentId int not null, + + CourseId int not null, + + Score int not null + +) + +go + +-- select * from StudentCourseScore + + + +insert into StudentCourseScore (StudentId,CourseId,Score) values((select Id from StudentInfo where StudentCode='01') , 1 , 80) + +insert into StudentCourseScore (StudentId,CourseId,Score) values((select Id from StudentInfo where StudentCode='01') , 2 , 90) + +insert into StudentCourseScore (StudentId,CourseId,Score) values((select Id from StudentInfo where StudentCode='01') , 3 , 99) + +insert into StudentCourseScore (StudentId,CourseId,Score) values((select Id from StudentInfo where StudentCode='02') , 1 , 70) + +insert into StudentCourseScore (StudentId,CourseId,Score) values((select Id from StudentInfo where StudentCode='02') , 2 , 60) + +insert into StudentCourseScore (StudentId,CourseId,Score) values((select Id from StudentInfo where StudentCode='02') , 3 , 80) + +insert into StudentCourseScore (StudentId,CourseId,Score) values((select Id from StudentInfo where StudentCode='03') , 1 , 80) + +insert into StudentCourseScore (StudentId,CourseId,Score) values((select Id from StudentInfo where StudentCode='03') , 2 , 80) + +insert into StudentCourseScore (StudentId,CourseId,Score) values((select Id from StudentInfo where StudentCode='03') , 3 , 80) + +insert into StudentCourseScore (StudentId,CourseId,Score) values((select Id from StudentInfo where StudentCode='04') , 1 , 50) + +insert into StudentCourseScore (StudentId,CourseId,Score) values((select Id from StudentInfo where StudentCode='04') , 2 , 30) + +insert into StudentCourseScore (StudentId,CourseId,Score) values((select Id from StudentInfo where StudentCode='04') , 3 , 20) + +insert into StudentCourseScore (StudentId,CourseId,Score) values((select Id from StudentInfo where StudentCode='05') , 1 , 76) + +insert into StudentCourseScore (StudentId,CourseId,Score) values((select Id from StudentInfo where StudentCode='05') , 2 , 87) + +insert into StudentCourseScore (StudentId,CourseId,Score) values((select Id from StudentInfo where StudentCode='06') , 1 , 31) + +insert into StudentCourseScore (StudentId,CourseId,Score) values((select Id from StudentInfo where StudentCode='06') , 3 , 34) + +insert into StudentCourseScore (StudentId,CourseId,Score) values((select Id from StudentInfo where StudentCode='07') , 2 , 89) + +insert into StudentCourseScore (StudentId,CourseId,Score) values((select Id from StudentInfo where StudentCode='07') , 3 , 98) + + + +go \ No newline at end of file diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\277\201\346\231\266\350\276\211/\344\275\234\344\270\232\344\272\214.txt" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\277\201\346\231\266\350\276\211/\344\275\234\344\270\232\344\272\214.txt" new file mode 100644 index 0000000..bb1c878 --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\277\201\346\231\266\350\276\211/\344\275\234\344\270\232\344\272\214.txt" @@ -0,0 +1,47 @@ +首先创建网吧计费系统的数据库,表结构和数据如2.bmp所示,表的说明如下: + +表一为上网卡信息表(tbl_card) +id: 卡号,主键 +passWord:密码 +balance:卡上的余额 +userName:该上网卡所属的用户名 + +表2为网吧机器说明表(tbl_computer) +id:机器编号,主键 +onUse:该机器是否正在使用,0为未使用,1为正在使用 +note:该机器的说明 + + +表3为上网记录表(tbl_record): +id:记录编号,主键 +cardId:本次上网的卡号,外键 +ComputerId:本次上网记录所使用的机器号,外键 +beginTime:本次上网记录的开始时间 +endTime:本次上网记录的结束时间 +fee:本次上网的费用 + + +请完成以下题目: +1. 查询出用户名为'张军'的上网卡的上网记录,要求显示卡号,用户名,机器编号、开始时间、结束时间,和消费金额,并按消费金额降序排列 + +2. 查询出每台机器上的上网次数和消费的总金额 + +3. 查询出所有已经使用过的上网卡的消费总金额 + +4. 查询出从未消费过的上网卡的卡号和用户名 + +5. 将密码与用户名一样的上网卡信息查询出来 + +6. 查询出使用次数最多的机器号和使用次数 + +7. 查询出卡号是以'ABC'结尾的卡号,用户名,上网的机器号和消费金额 + +8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 + +9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 + +10. 查询除消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 + + + + diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\347\277\201\346\231\266\350\276\211/SQLQuery2.sql" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\347\277\201\346\231\266\350\276\211/SQLQuery2.sql" index 3ec6f3e..f3a85cc 100644 --- "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\347\277\201\346\231\266\350\276\211/SQLQuery2.sql" +++ "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\347\277\201\346\231\266\350\276\211/SQLQuery2.sql" @@ -29,14 +29,14 @@ create table tbl_record ComputerId nvarchar(30) references tbl_computer(ID), BeginTime datetime , EndTime datetime, - Fee char(5) + Fee int ) insert into tbl_card values ('0023_ABC','555',98,'张军'), ('0025_bbd','abe',300,'朱俊'), ('0036_CCD','何柳',100,'何柳'), -('0045','0045_YGR',58,'证验'), +('0045_YGR','0045_YGR',58,'证验'), ('0078_RJV','55885fg',600,'校庆'), ('0089_EDE','zhang',134,'张俊') @@ -49,16 +49,16 @@ insert into tbl_computer values ('B01',0,558558) insert into tbl_record values -('23','0078_RJV','B01','2007-07-15 19:00:00','2007-7-15 21:00:00','20'), -('34','0025_bbd','02','2006-12-25 18:00:00','2006-12-25 22:00:00','23'), -('45','0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00','50'), -('46','0023_ABC','03','2006-12-22 15:26:00','2006-12-22 22:55:00','6'), -('47','0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00','50'), -('48','0023_ABC','03','2007-01-06 15:26:00','2007-01-06 22:55:00','6'), -('55','0023_ABC','03','2006-07-21 15:26:00','2006-07-21 22:55:00','50'), -('64','0045_Y..','04','2006-12-24 18:00:00','2006-12-24 22:00:00','3...'), -('65','0025_bbd','02','2006-12-28 18:00:00','2006-12-28 22:00:00','23'), -('98','0025_bbd','02','2006-12-26 18:00:00','2006-12-26 22:00:00','23') +('23','0078_RJV','B01','2007-07-15 19:00:00','2007-7-15 21:00:00',20), +('34','0025_bbd','02','2006-12-25 18:00:00','2006-12-25 22:00:00',23), +('45','0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), +('46','0023_ABC','03','2006-12-22 15:26:00','2006-12-22 22:55:00',6), +('47','0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), +('48','0023_ABC','03','2007-01-06 15:26:00','2007-01-06 22:55:00',6), +('55','0023_ABC','03','2006-07-21 15:26:00','2006-07-21 22:55:00',50), +('64','0045_YGR','04','2006-12-24 18:00:00','2006-12-24 22:00:00',3), +('65','0025_bbd','02','2006-12-28 18:00:00','2006-12-28 22:00:00',23), +('98','0025_bbd','02','2006-12-26 18:00:00','2006-12-26 22:00:00',23) select * from tbl_card @@ -67,23 +67,33 @@ select * from tbl_record --请完成以下题目: --1. 查询出用户名为'张军'的上网卡的上网记录,要求显示卡号,用户名,机器编号、开始时间、结束时间,和消费金额,并按消费金额降序排列 +select c.ID,userName,ComputerId,BeginTime,EndTime,Fee from tbl_card c inner join tbl_record r on c.ID=r.CardID where userName='张军' order by Fee --2. 查询出每台机器上的上网次数和消费的总金额 +select CardID,count(*) 上网次数,sum(Fee) 消费总金额 from tbl_record group by CardID --3. 查询出所有已经使用过的上网卡的消费总金额 +select sum(fee) from tbl_record --4. 查询出从未消费过的上网卡的卡号和用户名 +select c.ID,userName from tbl_card c left join tbl_record r on c.ID=r.CardID where Fee is null --5. 将密码与用户名一样的上网卡信息查询出来 +select * from tbl_card c1 join tbl_card c2 on c1.passWord=c2.userName --6. 查询出使用次数最多的机器号和使用次数 +select top 1 CardID,count(*)使用次数 from tbl_record group by CardID order by count(*) desc ---7. 查询出卡号是以'ABC'结尾的卡号,用户名,上网的机器号和消费金额 - +--7. 查询出卡号是以'ABC'结尾的 卡号,用户名,上网的机器号和消费金额 +select c.id,userName,ComputerId,Fee from tbl_card c inner join tbl_record r on c.ID=r.CardID where c.ID like '%ABC' + --8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 + --9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 + --10. 查询除消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 - +select * from tbl_card c inner join tbl_record r on c.ID=r.CardID order by Fee + -- Gitee From 5078419ee6dc8f23e1d8360ba28f5390acb770a4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9E=97=E6=B5=B7=E5=B3=B0?= <8753959+lin-haifen@user.noreply.gitee.com> Date: Wed, 31 Mar 2021 17:41:01 +0800 Subject: [PATCH 084/144] 3.31 --- Desktop.7z | Bin 0 -> 11094 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 Desktop.7z diff --git a/Desktop.7z b/Desktop.7z new file mode 100644 index 0000000000000000000000000000000000000000..729510efdd904f5d027aa8797f22f3aecb6ebba4 GIT binary patch literal 11094 zcmV-cE2-2sdc3bE8~_Bq%Q?OiD*ylh0000Z000000002;F1M}mMb9ctT>v_q$jKCy zh2f&PgF_{U^`OGui0MCim`WZx^o5G?I<|b{aMY<|$!6`NUb}u9N{^z&*k-%2m$@j~ zwHh0vw})0&wzXlp5_k)Dx0y`hWFAKHulG>RfQfToPuZOumxuQ}CVWN(iY49{iUl2M z03yODOdSL~0~dpjKXXZHf@@(o(OpDZGt-crHSogNF>)v^A8Fh{;R6RMrN zTCB=q1t?v(zBf)M%Y|#}`F5NahO}4f{%_O%iipJV4pFsR;k$fh ztQ_U)f<8|1)_$oQhkoo(hQ;RBPQPLeoa6`$FdaJ#<&V0d5ySA35Mq5Rol#Ot`tX#V z-^(mfxYdqW{OT8?j~@bt@}z9rYaO3N-SFSSvMngVZ78$V4*J%~fRxPzDW39MiJ90Y z_*F4p*i=M#9IF*uMJmQ*@ENGt+X(I-WZ1!;T_($r4p6n}0aL?be5?U{-;}hpe^nw_ z(7@ewyw-u#%`V40iq=R5)T7&&?ucQhvxm2u@VTK?x9M%$JSPcxBmBJlYhqYbj|EehbU%)!N9dnIXYoPRjt|&of8LTHP*4ZOM z29WmR?8>zuj8R+r2d2PEc^oG7hoV~a-ol|C4hAn3^_8t27)&SB&3cw$8a7wmyB_D>R8vy$@DyzXpC}W$o-xo%8`E z7vx5&+Eg_(=m3b>NB}$*4qAt`RMU!pp7BBj2p>_N`58XuJm*~Y(M?>O!`(a$mw!D&-t$<0lFPoWHF zJ)PVC*S85=w-;Zn!tcFuT8TLDQzqIs>Ke*tNpl}BJLPh=47wI~6=$7#93w zOGJE+aC~X?Vq;MlkkE|6tCn#`oKQm%Vt{0A-{k0x(zvwF;sXto zr2=1U)ia#EW`Sy$)G~V1P;UgfV#}@iPPI4mFRrxWXbUW1_-5A3s^*$tB80BT^UJ2e zl@n}r0A!he_1DAEKvy3WL~vxND2kukmkS;lQ7Cnfa{E_GU+363ZC5jq3RTUL(k%^3 zf%}-rvW}+1NI73edCrxWA*?pVeJcenEsf|6J&_vUa1u`>EQHX(o*m*NzB3E0u@~8H zTIC|T_TFbbA9YVJg{v#zr-AV-72t-@L_{6UMyJtp)1mDXt?^5zzSt znft#7wvnYnw=CC$;$K`61 zXvD`u|MBhP~Mmxb|kR8m9WFt!G z62n7@r?$WKf{)Avt$F0d+A81CRbnA$wkS`#8!QRyrHh!p1LZeFPiKaPs1%>5GlUK{ zV3zP7yF^f324Pa!!tUk?@F%<&CaW0L-<_hPkvY%6!M7YXylW$wKOwR4ywSiYEb6tgjY{cij9&t8^`qosXnyWP4-zDUV{EYDsVPbguR5OBc zp&7S}K)il2iTyz^_Z^w;Nc}4ZG2Io=un37i<-X@ck0Gb1?P~XlA(`lI#r!ur#{ zdsojI?GgT-EPRM!Y)MtdDe}T8At?pyi_3*#x2Jt8X1R2Zj&m)Fq(xap_M29%3QrDH zeU`54vk%oTY01&Xm~5K;AD0!S4q<+=SA_F{i;6c(o$3>Hf*GVp1 zWI!ZtTHWEP3f|KSs8^Oj0N0eos7xBWO4R$=mlzI4;L6n-U2GOz^+uTUJo&?>SftBWhjEO{_oVCP#0ZHNS$2<(90 zQK7ezkss$9EhKv^@Wuz^H4SP< zk}r6xS`wm;Q7|EZ8!Q7#L%JyilPHX0_g~ur{CjPxX3335!I`3K$Aw;n_|k)X0xx|8F}VDcAoqK#7$oCz%)vy;-4QTS`$Acfl{Ipj z^v+cm0h`jo?neU-Mv%%~56mjo%8_(^hR7OF*D*MxkoyO`18&eE(t&1{6Gr?GbaXs9 z|GmFX>HAG(`hG%kguDFVy=X)>C=V59{h=4(j|Qq=EexPI?+3JHNm{lyZ@gT|{gAld zUM4-L$tz;>Tr10=0Qia!;iyeK;5}A(%!&t61H^0_?Jg{?E-G5yZCJwOn4PtL$2v^3 z^5R~EW_7}G3zZ~#<7$-ZtGw#vlDOdNdo)SO)1hwLnru4l@JwvQQEMpJsl-rw{O=rI z8CmkmKGQO;FWto7U1MD-Go46Ofd}B?mcPWL4UOUO?WrYdUyip!?(z9bV@9$W;dcJs z99He^cc_2n0>t(Bwn1S4I%F5_%S-xb&$4z5r&{8mO5GU_ZziJ&_BCBXZtbIpKUO6y zq*NA&{UAze453h90tlX;BvR@7RA{e&CTldc?9z=%OcB%%Ei@XrImCLbbZMGNeLFIb z?x?5=0*^{iDV~+u_d_IPjBnlKh`HA`>c?`kYPNXPNhwJ}Yaix$)(;$mrbC9Q!Teql zwD_AB|6@TxXjDV-!I;{%B*yi3bthaJ6aHs+)aJJo{l;d-jom6$PI+^P3-sAJ)5QZ} zRS64LY8HkVm#$483kkz@D+le+8#pB*0&z-V2ol=Zjd#dW8ael%bx2d(l8KLT5qYn| z!YGzD_u^Uka>}Uw2`T(c?`b!zk}Z74oeVcMn>h4ID@Of%*HpV?TvIa`23n!Do9wnZ zgaDm{*>NVyMM^amGO>ulvD^au{*r2)leqL6$w<{KUD!xuZX^M$V_pWtUB2lke5fPnT2&UcK=O5jG3h^QxL4$`?$BG zsV@DAG`hgQS~UgslUSt6h=8sMOAx7>1FW-wXj`WRm>Dz@ARHrFL{Z4!wpP(vVES?( zRF=Lu!eV?0bx0L$%;-3pJNF;>J{N#@D)JFbEDHHtgC9%-`j1|3!#llcl}Q^e#P$Xr z2~;Sa{!?8{UUT|F)+rLqC@zfIizcmqEqCeqVG2!WdXQn*2CC?X2*~5Bj1I-!wXCNz z_CiNUHJqoE&Ai4*Tn6U!<>|ep0+lUqw~_K> zm)Ltew=@xFHspDcD4TDpVl>LDp$o$tm(F>*jf_K-IJHa4uGM>8a2hqe1XFH|cty)! zUmCFSHb-G7Ou0bb*BoE4AFq3z)zt@%R75?rYB4UF-j6oUb@AY=84CKd>PGl9^i<6` zTIwq$30vP^3o2NS%j6&%RUK#iAbm~bM;Krq#!&=t_P21aCoDe{z5jWrUi%v8I;*X! z^t}4P)8W)kaiM9snXSTjhr*+bN+wQ7El7=`R74cfL=Ea6!SjOj<6in^1 zd{S?GhG9kH7+rM;QzU#2(9SK`BI~PeV9G}5RAV!@)Y^DsZ8Vl<0Q@#qn*t+^f7@Gc znF~N}-X-!Kh$rZAC^3Wpr9NEhb8#RavA!VZR4Ub|8J;t6lU7uQMf*TuRHE+*$EqRrz)BanVorJS1(hDM2ANhj-ASN`KAO@bo7 z2W(Sgz~BY$!U+CQ1R=UQOZ0EKlCM?P91errb|ubKEAc-LIAn9l z%Q>|{7j06?9ra>_!QYk^U+u%YwQ{I3N~WfqLh^&aSraXfy<`pqytC|0g)0H}av;HM zls6vs$8arhs6~N@n#8PWfS53<@`Vw~0f424;z$z;oELcIr33f^XsHo~5>Q-EJDmON zs6dBWL0u^qao-%L2ZISC$MBhhv2!g6R&qs3$tLuRMkogDc8i0aZdl~jrl?_%!KAG? zt7(~xWHj)@Pkv1Lj_JL$3aZWF^*ksF9dT1h&L%h;3MxdO_^~^dXwSrZG##6`}NV$r;L-0v2SRR4}zewJ*tn^PJMx8Dhu)_ z)i?!!p6Q3Bn6)Dh=kC<*87Jut-82%?btfj@N$wygs$J=?euS#qzHi_V0#d>?0Ji5Yq53;(}ewxE2@nuJfy<$_6 zq|s2C6I2FOAJMJh{tsFcrg^y%?E+r2Phhex99qUTX))wbAsj<@mLy?O&P z7?nlwSf0G(smr=;iYn@=;ndDvJfA-m^UefWOxDD$Is!Z~{;bpx*P}P{Oh8#OpElkyEKt&0q4;lf#EaPGQ1daz9aCqmPlDsa_6pWC+LvS^0D4;vJ>)&53dsU zQk#pVi$LxvDcPz;+;aNXWY)wqkoemlRmCl6VXHa1XKY*fU&8b_v0m{5sAO*9ba$QP zH52xDhxaO`pDx(H;4r;5Z~m0kf#f6cb6ax5n4>t{%nRHMf#(lG9|Ah6v|tG#g=A?O z2z>rP7V%h8@GBo{c1CFj-LDi!xCbNplbT5@ks*R@)ek;aHc!X8&U1<4?phCWsh73; z+A_^-y38cV!xz^5umR$zZbz@2B^kz;=7sS$o+giw!aEH_NuN;$i`SOwb9A9!UmFgq zYn~&>n6YWl(P(cYcl`uLC_#TJH6m|Z|FQzfOFuTUnbRh84D8OnY`Cd1WE{}iB#$zn zh!|a<^b{LV-vEjd^7_6XxCQ-;|DEWM%X!n4Ep`Z%!3RL6lHyIm8+wgWsO!c16+7tZ zDa*3UKO(7Y?;ddCGJhibwz{M^t7xH&ZB?DsB&aLQ9Harz%AyL><2{M-2H`4)k^A@< zw|mlB8k|>DQN-PosaO2GVx~StE>oc;K(J}uw|Jr5odrp&^ve7?d9{b8pQ*bti%q3s zm`QBHu`p^$LvPI?W>V=$&J%tFlZ%yJ93>vBfH8V*r68FzTQ1j0b!dOIxVJRJX_VoQ za4D+Ei^hA|v96?dE%iwXAJ%v_*&Hwza43zTaYx{TeKf3Zxv=Tp+zkq3ulijqUX9SMdZzaExB+!NUC*4?HcWi{?0^lB2vJ{ z>`OP>M9~Qxol)-=vI(q$1NyG(d5jGZUKrE8LKv#V;QMjHMGA_?B5)NHfSDW{mWyAz zA8L7CR8;yd7mf|dM71eq^Z$4g5MdZLLZKSIJVrS=AuB)~DHj>kj}XPo$j~z>8@jZq z(S|&~0}A^)v5J68!4B5pA=rp0?&T2G8WVEDvyfs5nm|YXDTL!*ARYb^gv9ap)W$rg z{9Tvt>62LnLI#_)iMK}W?mT%j++n(Vc|1Gr-9`f$(+HrUJ49QJ00y@9MUN&X$w@`5 zfX+5`<$Lu`RGSos6ja9K4NSGd&s#7KKlXhmExFTnXNx1xv*kXaw&-CC^fBaj>Le?` zc%M@EjXCVCwRpGF830yXlEx^jun;`s-?fRH2U}qIO3bm-Rjb9B3S*KmG9c0-r@xO2 z@(LujU4xX+yksLIT4%$iM7YJ{o^w0A6O8OjQkRxbtNs?L<%6)dxx~0wHy+o!f&>TR z15_-j6s!I;k|EqAVh5-`SOoa0JclX6kKboz6O89TD)@;Pb2ousAiO2zBl~5Fd)Q#- zm4h(f1N-vuyVMdAdDlXRJ-{PQ53$B@4>?F^oGto@H7X#_E-%O4YX3%jn7{t#BjNdr z=yMUU2=D95ZGWTDLn%~LNX-rM9$8)H9)%@d%xMrUmf-4{^(UKfw7Dxx<=Eh3{XBvw34 z4u^Gwhp;HsDMc0SN}zgr5A%P)JhDowbjdHOfl{xPsBw19mD2JAZxIl1u(g>>E$%{n z$!f{osVp%NP=qZxa2l6t&$_?q)@1|BAxr;7dGY-j%CHMHKI8S->;D{Oy#+v#OVjZS z9-0gkndUTk8&HBt>DuwvTGN=?`J9jFLyeu2`Kpvh>7%hiYkxaz{6K>CFnc+7vxfxD zY!De4zL@3_&%bLToU;QioaFJX7HiL?v}6b}has$5+`YC$~}hl=aWT1qQPk2Sm`v zp|EurqDzI#L_6)3B9iZW*Ifg@+13eJ>H&!wI&}jrx|b|XNQ&a@_`~7Vsby5Q$ z_*(*q2s^D2ThL*@+1ROrzJuqL^gqCoP;t#0rK29A9mem7SD_;pTpMb5P$c4z^(^I0 z&&<~|GDf3}PNWm=LCnDOo2o>5qk7REaxpgk>7;Wlh?O*Y5G!wPU*e%v#&b)*c`-47 z6B)%5$g|*3r%Pn!VSzT1;XsD)Z`j4!?eaq8_2nsO;AuSv``)_C~}IFSox<4~U`}*aU5e4VyNC6k_ZYjfpu*rJ$@HV;z^Z zY!0?Bn#%um95VP3^EU(~c7u_&sC7~s!X7+ZVQZx1IedVH9iGRY1qCJeY9+SACxZc}@gD)gD z#TsmIOSzPaU(4iR{p*J-Km<&5(UU8>Ldv`u5p3E&4XDuss!!ZJZ%tSe5p}7#xH@fL z99~13e3$8vWg*kOd(~a5FnQV5xh4j5`hM?{=d*qcj7K7(Qw^YDc^iwKrCG?vX09nA z%#ajr+7qn&v;zpE|0bCOD(vO28fpZ;WQCJeKioJ?w0uX!0AYK z87pEZgtsS?R`G4!F==tyPubb3$XyUgwPj~pgRKjA08|TLH60v;49~9ByK}X)n2vn! z4%y&Z5N9tc!{Y+DYjbO};qdQc& zl~|j2!w>r{C?)FG`&Gl_5l@ss^fbU&;#3hbw-^E-rzF0v`10*aeq5IC{vL~pIQ#g< zUFA+}>sl^vo4PqZ7@Ofrllhvby0nT-7A+`|4T_e*SS)@}aY%a&Vn`fUcU@Wr^9d{v zCw;x?PHC}EJc#m)c34dIa=Mrzniw3Kd1EjYB~ma~ktL=#1BIz2mP)|ARtyX5#p^>T z87FU#<|loVu2d5vzW&mV)8tyuXyV`79~rf}phD=8AqZt= z0O9JK2U_Ee@m!T~+U1@0Cbajdc*CrJrE@MNI{%gMNk{G|69oC@>L|o1`iQ&Io(EUj=`vkQ?@pkJX;L`sL+joCt8COgPPBu z#WXx9;HmF(qA2fO2h&abibN%Wu{YeKp-A#BIomZ>{%x+Mc zK;uiQ_e-UOCd@-g`>-XNfMvDAfmsyhN<)352dHp&V*MEC&sWClafv10mdH_L18%72 z0ybASE6k4k_`l5yJMLs!#X?w#{+7SPYGyr)kX_d0gOx4l_%6wBL|Q$q#v#a-m1;D? z2I{oskt@KeTAfXO+G`%cvupDj0(jzQ{l5EtQW0*Q+*KO*$t8eX!ShRo{i~Hvxj|AhpTf6phJ*s< z7#vdu45`o|@U#=w&MC81d*gdjWSl#}y{?XS(*zBWa;ktLrEk=p%*`RK8?(YTXT+y= zn>+tSF^u~I%@!Io2*~pKeY7&n88djA1zQ|#y+9Ad&D5c9m;tjyBuljDsi>>66T?n< zsq1*1RhIZj2_zJ8z2y>$>#$EYGe_&nK>RC#X3z9OO}MoLj;x26xzOhf^qEa*ILr!R z|GFUC?C^0I3|J4>9X&9*KR5L%? zG-bGLGO~36yG&;BJqhS{mwj^3PGUnoLK#I+l>WKqb6#atjW{gw1^>d@hrJ1zBQe!J z>4)=zUk|^ml|CUZ8s#TLiUIi8S?>-Sd9bDY_TQx!hM~4lgcfMiS?L5uW`Kc}%EU&O z9zPw&8b`VKt{K3rwzBGSb`Oz}bI&vb_FFn~O!%|zU5Kvv;lW+KENW(Id7#Qw+Gzd0azZ$D!!55+;X% zTkrH&6*1No4{`Cb8_U@!R1o2x%$I53%XsG@J-8`z@6km3@Jlpo=d(veJaK0?cbyA$ zX1p7x$9KurlsKjb*!cCToSKKA<>T)l*X4osh>jMkpTm>2p5yg6WK#=j1ZJP)IvG7b z=We2Ete5mOn6l{F6?dIz^u0w0(U^GL6}#WRq$W=lA#V_DyE@ZZ_*WPhp1$Tc<|y@^ z6>5#1sk>jJP%WojAY_|Ff2;e0mg}AapT-92ihJfbhu`TCK!qC;n2O&v6 zvY0XB)VCb*$$+2RHXZwzEoR83W)70bieQ`TzN3-_9%^5Uo5rIyP}Zk}vzQw*UPCiq z|B50O`+=i$XO=G&(4G`%wnV?zOX8KEsQGBWDHM&!^-o9d^${W{y^ZDaK2w@I76HQq z^uf{T{X_kkCn&XI{EjsqYedx-S`kWQHON=C(uAeLzd!}j-&J4GeS#*KpuMIbrXYrA z83dW#tR@%Q+pD(wsV)JgI>D9z%?E!`fYKp;An?~Y(Z$7EGLso24>}$=w@4u{&Y5g@ zJ{r%sC35ZA{?fE-K4p;f2C923URJZ`MB)q8wTd0>#;iP1wJ1G0Sh^uGAIkH)ua{Fv z(J{EP+TfJr_rH*1DYKg(y`hRPS+i6e|6H_f!T2HkkSbmY7V=5Y2g&aao34g)VhBcU zx7JIsUs;0QI~O)V*Lg`%GK7QDd1dn`RCQX7PqkWGShY7S&)%>69b05uvIZo>dKeS& zKJEO9@&FEV;oz;Broc7gO94soew2ZIP(5U~tA+nG53w9{q0x(9_>NLUXIfIQ?ystZ zDNsvQtD{`DA7Y8&Vpfj*J*Rl(dd4375Y-Xuw^!BDVTUN_Dzb!}iGb{UN!S^|Hp~8x z#`OsQV*kG1A8O&e`QB2b0QkTrh$#LXRvA&2!(}D+&`-5;HYxdbG ze1XRL)*8LmMt9Fup69W1!)lWF@bjjkYWIlU3_$`Pmm@VmmP+ZC&DGTt-mld%rzeYj zg|0R!(;~}7Omkj|5hOLTQuduw90qdfw?|1WNDqGG~YG+y$>75IZI;6qzw$ zvHRTznYkD-@1=pV6tSEtm(N1uOO!bx!7w_)dC=YaJtRP~Mm}ehk}r5}^M&%W2qdn2 zVAPXk(@%vdcBJK9nk4xwr9PmSaTNqQb3!y<4^J>3MF_z`6O+~)DJT8t%QtyS+$sVK zSn%pNRsh!xrUK~xu&zx0v|7QAcv(z6!&#bIibp{K5BGL2&807QSt&uNXk6u^;ZI#W zqy7;HIsB7|)QChJmBdpBs4MAaw;3}fAK{c8Z8$lhfvWBp;@ooQ(@)jOy-|0I=|cVG zs*Ugv#$tf1pw0_RKFT;=yR67FSDa}`11w?+GU#|0PXA=?wE3TgFV!uNx}Fm5#Ex#V zTAgrP@Op?&EixeDsW^+18;Z=$+Es#8H3|{EffH4!SJE9o5W@-A5GKL=Q^|L3y4qX1 zQ*HhVTh6@rr4EOn@np4qi?FOTEIMc@Qz%f2m@SEIv}8=>Kk|Sr`CI5rw5c^z41tHU z1!h>T_7NHO0G|)#IGsK{K^k^jaR7q|i zELr}AKd#-5F_UB)j>hS+<_)sUi7I172aB!cu2PS4H^V@cww)#Nvau>y{nfHBQ( z5p@0#ZW0z)oDjfo{bPN+^JbcQ=}ip7Xms3*St!xotH|PaPb}_!Yfq46(3?#K!&sU7+CDF5YM3X8f_}bpa828s5>4j&G$EcI zS*q9x8j+X)004nA2d)p+{K$e=B-8%0a2Bz4n_B-CO(ctnUb2K-ZJqmg3d)=F-XXB% zN9L(v?(jdcaMo*a$PP(eKm)~m!K}G3bp@DI$FW2nt$@|Xk0V_~%K)?xwzbe{TcRHA z-T6cNGraBy7gSloofxvg*Uct0ZhR9BeY&{rdrH_0N~cWzPVM*_vw=~}`283sTqDR2 zH*)u8$tI`KMRr$tT+=#Q|Fz@3JzU`0z)ExA->kIOJHAC6ZT1nOL;x2Cs#O6AfW80+ c3jqKDBLe{e1zi9T000bu7777}g&Z>g0JDo{f&c&j literal 0 HcmV?d00001 -- Gitee From c5a81340083640e2acbe98091a88acfdd745c926 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=84=A6=E6=98=8E=E5=90=9B?= <3223613762@qq.com> Date: Wed, 31 Mar 2021 19:25:29 +0800 Subject: [PATCH 085/144] =?UTF-8?q?=E7=84=A6=E6=98=8E=E5=90=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../3.31zuoye2.sql" | 118 ++++++++++++++++++ 1 file changed, 118 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\347\204\246\346\230\216\345\220\233/3.31zuoye2.sql" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\347\204\246\346\230\216\345\220\233/3.31zuoye2.sql" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\347\204\246\346\230\216\345\220\233/3.31zuoye2.sql" new file mode 100644 index 0000000..0827f8c --- /dev/null +++ "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\347\204\246\346\230\216\345\220\233/3.31zuoye2.sql" @@ -0,0 +1,118 @@ +use master +go +create database wb +on +( + name ='wb.mdf', + filename='D:\wb.mdf', + size=5, + maxsize=10, + filegrowth=15% +) +log on +( + name ='wb_log.ldf', + filename='D:\wb_log.ldf', + size=5, + maxsize=10, + filegrowth=15% +) +go +use wb +go +create table tbl_card +( + id nvarchar(20) primary key, + passWord nvarchar(20) not null, + balance money, + userName nvarchar(10) +) +create table tbl_computer +( + id nvarchar(20) primary key, + onUse nvarchar(1) check((onUse) in ('0','1')), + note text +) +create table tbl_record +( + id nvarchar(20) primary key, + cardId nvarchar(20) references tbl_card(id), + ComputerId nvarchar(20) references tbl_computer(id), + beginTime datetime , + endTime datetime , + fee money +) +insert into tbl_card (id,passWord,balance,userName) values ('0023_ABC','555','98','张军'), +('0025_bbd','abe','300','朱俊'),('0036_CCD','何柳','100','何柳'),('0045_YGR','0045_YGR','58','证验'), +('0078_RJV','55885fg','600','校庆'),('0089_EDE','zhang','134','张峻') +go +insert into tbl_computer values +('02', '0', '25555'), +('03', '1', '55555'), +('04', '0', '66666'), +('05', '1', '88888'), +('06', '0', '688878'), +('B01', '0', '558558') +go + +insert into tbl_record values +('23', '0078_RJV', 'B01', '2007-07-15 19:00:00', '2007-07-15 21:00:00', 20), +('34', '0025_bbd', '02', '2006-12-25 18:00:00', '2006-12-25 22:00:00', 23), +('45', '0023_ABC', '03', '2006-12-23 15:26:00', '2006-12-23 22:55:00', 50), +('46', '0023_ABC', '03', '2006-12-22 15:26:00', '2006-12-22 22:55:00', 6), +('47', '0023_ABC', '03', '2006-12-23 15:26:00', '2006-12-23 22:55:00', 50), +('48', '0023_ABC', '03', '2007-01-06 15:26:00', '2007-01-06 22:55:00', 6), +('55', '0023_ABC', '03', '2006-07-21 15:26:00', '2006-07-21 22:55:00', 50), +('64', '0045_YGR', '04', '2006-12-24 18:00:00', '2006-12-24 22:00:00', 30), +('65', '0025_bbd', '02', '2006-12-28 18:00:00', '2006-12-28 22:00:00', 23), +('98', '0025_bbd', '02', '2006-12-26 18:00:00', '2006-12-26 22:00:00', 23) +go +select * from tbl_card --上网卡信息表(tbl_card) +select * from tbl_computer--网吧机器说明表(tbl_computer) +select * from tbl_record --上网记录表(tbl_record) +--1. 查询出用户名为'张军'的上网卡的上网记录, +--要求显示卡费金额,号,用户名,机器编号、开始时间、结束时间,和消并按消费金额降序排列 +select tbl_card.id 卡号,tbl_card.userName 用户名,tbl_record.ComputerId 机器编号, +tbl_record.beginTime 开始时间,tbl_record.endTime 结束时间 ,tbl_record.fee 消费金额 + from tbl_record inner join tbl_card on +tbl_record.cardId=tbl_card.id where tbl_card.userName='张军' order by tbl_record.fee desc +--2. 查询出每台机器上的上网次数和消费的总金额 +select tbl_computer.id 每台机器,count(*) 上网次数,sum(fee) 消费的总金额 from tbl_record inner join tbl_computer on +tbl_computer.id=tbl_record.ComputerId group by tbl_computer.id +--3. 查询出所有已经使用过的上网卡的消费总金额 +select tbl_record.cardId 上网卡, sum(fee) 消费总金额 from tbl_record inner join tbl_card on +tbl_record.cardId=tbl_card.id where tbl_record.fee is not null group by tbl_record.cardId +--4. 查询出从未消费过的上网卡的卡号和用户名 +select tbl_record.cardId 上网卡, tbl_card.id 卡号,tbl_card.userName 用户名 from tbl_record right join tbl_card on +tbl_record.cardId=tbl_card.id where tbl_record.fee is null group by tbl_record.cardId , tbl_card.id ,tbl_card.userName +--5. 将密码与用户名一样的上网卡信息查询出来 +select * from tbl_card where passWord =userName +--6. 查询出使用次数最多的机器号和使用次数 +select top 1 count(id)使用次数, ComputerId 机器号 from tbl_record + group by ComputerId order by count(id) desc +--7. 查询出卡号是以'ABC'结尾的卡号,用户名,上网的机器号和消费金额 +select tbl_card.id 卡号,tbl_card.userName 用户名,tbl_record.ComputerId 机器编号,tbl_record.fee 消费金额 + from tbl_record inner join tbl_card on tbl_record.cardId=tbl_card.id where tbl_card.id like '%ABC' +--8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select tbl_card.id 卡号,tbl_card.userName 用户名,tbl_record.ComputerId 机器编号, +tbl_record.beginTime 开始时间,tbl_record.endTime 结束时间, +tbl_record.fee 消费金额 + from tbl_record inner join tbl_card on tbl_record.cardId=tbl_card.id + where datename(DW,beginTime)='星期六' or datename(DW,beginTime)='星期日' +--9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号, +--开始时间、结束时间和消费金额 +select tbl_card.id 卡号,tbl_card.userName 用户名,tbl_record.ComputerId 机器编号, +tbl_record.beginTime 开始时间,tbl_record.endTime 结束时间, +tbl_record.fee 消费金额 from +tbl_record full join tbl_card on tbl_record.cardId=tbl_card.id + where datediff(HOUR,beginTime,endTime)>12 +--10. 查询出消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号, +--开始时间、结束时间和消费金额 +select top 3 tbl_card.id 卡号,tbl_card.userName 用户名,tbl_record.ComputerId 机器编号, +tbl_record.beginTime 开始时间,tbl_record.endTime 结束时间, +tbl_record.fee 消费金额 from +tbl_record inner join tbl_card on tbl_record.cardId=tbl_card.id +order by tbl_record.fee desc + + + -- Gitee From c89cd5d1d413ce1968e118c572b6f20eff6e95b3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=96=9B=E9=87=91=E5=81=A5?= <2078165420@qq.com> Date: Wed, 31 Mar 2021 19:43:03 +0800 Subject: [PATCH 086/144] =?UTF-8?q?=E8=96=9B=E9=87=91=E5=81=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...4\346\254\241\344\275\234\344\270\232.sql" | 106 ++++++++++++++++++ 1 file changed, 106 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\226\233\351\207\221\345\201\245/\347\254\254\345\215\201\344\272\214\346\254\241\344\275\234\344\270\232.sql" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\226\233\351\207\221\345\201\245/\347\254\254\345\215\201\344\272\214\346\254\241\344\275\234\344\270\232.sql" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\226\233\351\207\221\345\201\245/\347\254\254\345\215\201\344\272\214\346\254\241\344\275\234\344\270\232.sql" new file mode 100644 index 0000000..0430e66 --- /dev/null +++ "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\226\233\351\207\221\345\201\245/\347\254\254\345\215\201\344\272\214\346\254\241\344\275\234\344\270\232.sql" @@ -0,0 +1,106 @@ +use master +go +create database tbl +on +( +name='tbl', +filename='D:\tbl.mdf', +size=10mb, +maxsize=50mb, +filegrowth=10% +) +log +on +( +name='tbl_log', +filename='D:\tbl_log.ldf', +size=10mb, +maxsize=50mb, +filegrowth=10% +) +go +use tbl +go + +create table tbl_card +( +cardid nvarchar(20) primary key , +password nvarchar(20), +balance int, +username nvarchar(20) +) +create table tbl_computer +( +computerid varchar(20) primary key , +onuse char(2) check(onuse=1 or onuse=0), +note nvarchar(50) +) +create table tbl_record +( +recordid varchar(20) primary key, +cardid nvarchar(20) references tbl_card(cardid), +computerId varchar(20) references tbl_computer(computerid), +beginTime datetime , +endTime datetime , +fee int , +) + +insert into tbl_card values +('0023_ABC','555',98,'张军'),('0025_bbd','abe',300,'朱俊'),('0036_ccd','如柳',100,'如柳'), +('0045_YGR','0045_YGR',58,'证验'),('0078_RJV','55885fg',600,'校庆'),('0089_EDE','zhang',134,'张峻') + +insert into tbl_computer values +('02',0,25555),('03',1,55555),('04',0,66666),('05',1,88888),('06',0,688878),('b01',0,558558) + +insert into tbl_record values +(23,'0078_RJV','b01','2007-07-15 19:00:00','2007-07-15 21:00:00',20), +(34,'0025_bbd','02','2006-12-25 18:00:00','2006-12-25 22:00:00',30), +(45,'0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), +(46,'0023_ABC','03','2006-12-22 15:26:00','2006-12-22 22:55:00',6), +(47,'0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), +(48,'0023_ABC','03','2007-01-06 19:00:00','2007-07-15 21:00:00',20), +(55,'0078_RJV','b01','2006-12-23 15:26:00','2006-12-23 22:55:00',20), +(64,'0078_RJV','b01','2006-12-23 15:26:00','2006-12-23 22:55:00',50), +(65,'0025_bbd','02','2006-12-28 18:00:00','2006-12-28 22:00:00',23), +(98,'0025_bbd','02','2006-12-26 18:00:00','2006-12-26 22:00:00',23) + +select * from tbl_card +select * from tbl_computer + +select * from tbl_record + +--请完成以下题目: +--1. 查询出 用户名为'张军'的 上网卡的 上网记录,要求显示卡号,用户名,机器编号、开始时间、结束时间, 和消费金额, 并按消费金额降序排列 +select userName 卡号,recordid 用户名,ComputerId 机器编号,beginTime 开始时间,endTime 结束时间,fee 消费金额 from tbl_record R +inner join tbl_card C on R.cardid=C.cardid +where userName='张军' order by fee desc +--2. 查询出 每台机器上 的上网次数 和 消费的总金额 +select ComputerId,count(*)上网次数,sum(fee)总金额 from tbl_record group by ComputerId +--3. 查询出 所有已经使用过 的 上网卡 的 消费总金额 +select cardid,sum(fee)消费总金额 from tbl_record group by cardid +--4. 查询出从未消费过的上网卡的卡号和用户名 +select C.cardid 卡号,C.username 用户名 from tbl_card C left join tbl_record R on C.cardid=R.cardid where fee is null +--5. 将密码 与 用户名一样 的 上网卡信息 查询出来 +select * from tbl_card where passWord=userName +--6. 查询出使用次数最多的机器号和使用次数 + select ComputerId,count(ComputerId) from tbl_record group by ComputerId order by count(ComputerId) desc +--7. 查询出卡号是以'ABC'结尾的 卡号,用户名,上网的机器号和消费金额 +select C.cardid 卡号,C.username 用户名,R.computerId 机器号,R.fee 消费金额 from tbl_card C +inner join tbl_record R on C.cardid=R.cardid +where C.cardid like'%ABC' +--8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select C.cardid 卡号,C.username 用户名,R.computerId 机器号, R.beginTime 开始时间,R.endTime 结束时间,R.fee 消费金额 from tbl_record R +inner join tbl_card C on C.cardid=R.cardid +where datename(DW,beginTime)='星期六'or datename(DW,beginTime)='星期日' +--9. 查询成 一次上网时间超过12小时 的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select C.cardid 卡号,C.username 用户名,R.computerId 机器号, R.beginTime 开始时间,R.endTime 结束时间,R.fee 消费金额 from tbl_record R +inner join tbl_card C on C.cardid=R.cardid +where datediff(HH ,R.beginTime ,R.endTime )>12 +--10. 查询除消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select C.cardid 卡号,C.username 用户名,R.computerId 机器号, R.beginTime 开始时间,R.endTime 结束时间,R.fee 消费金额 from tbl_record R +inner join tbl_card C on C.cardid=R.cardid +where fee not in (select top 3 fee from tbl_record order by fee desc) order by fee desc + +--前三名 +select C.cardid 卡号,C.username 用户名,R.computerId 机器号, R.beginTime 开始时间,R.endTime 结束时间,R.fee 消费金额 from tbl_record R +inner join tbl_card C on C.cardid=R.cardid where fee in (select top 3 fee from tbl_record order by fee desc) order by fee desc \ No newline at end of file -- Gitee From ce62fc2c26899d50854f5cbd4a173b4d1fe1300e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=A2=81=E9=93=B6=E8=8A=9D?= <2816000163@qq.com> Date: Wed, 31 Mar 2021 20:25:10 +0800 Subject: [PATCH 087/144] =?UTF-8?q?=E6=96=B0=E5=BB=BA=20=E6=A2=81=E9=93=B6?= =?UTF-8?q?=E8=8A=9D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\346\242\201\351\223\266\350\212\235/.keep" | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\242\201\351\223\266\350\212\235/.keep" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\242\201\351\223\266\350\212\235/.keep" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\242\201\351\223\266\350\212\235/.keep" new file mode 100644 index 0000000..e69de29 -- Gitee From 2f9c0c1122d6f4f943cc90539fa5bc46ee98644a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=A2=81=E9=93=B6=E8=8A=9D?= <2816000163@qq.com> Date: Wed, 31 Mar 2021 20:29:21 +0800 Subject: [PATCH 088/144] =?UTF-8?q?=E6=A2=81=E9=93=B6=E8=8A=9D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SQLQuery21.sql" | 134 ++++++++++++++++++ 1 file changed, 134 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\242\201\351\223\266\350\212\235/\346\242\201\351\223\266\350\212\235/SQLQuery21.sql" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\242\201\351\223\266\350\212\235/\346\242\201\351\223\266\350\212\235/SQLQuery21.sql" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\242\201\351\223\266\350\212\235/\346\242\201\351\223\266\350\212\235/SQLQuery21.sql" new file mode 100644 index 0000000..e5cc1e5 --- /dev/null +++ "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\242\201\351\223\266\350\212\235/\346\242\201\351\223\266\350\212\235/SQLQuery21.sql" @@ -0,0 +1,134 @@ +use master +go +create database tbl +on +( + name='tbl', + filename='D:\SQL\tbl.mdf', + size=5MB, + maxsize=20MB, + filegrowth=10% +) +log on +( + name='tbl_log', + filename='D:\SQL\tbl_log.ldf', + size=5MB, + maxsize=20MB, + filegrowth=10% +) +go + +use tbl +go + +create table tbl_card +( +id varchar(10) primary key, +passWord varchar(10), +balance varchar(5), +userName nvarchar(2) +) +go + +create table tbl_computer +( +id varchar(5) primary key, +onUse varchar(1) check(onUse=0 or onUse=1), +note varchar(10) +) +go + +create table tbl_record +( +id varchar(2) primary key, +cardId varchar(10) references tbl_card(id), +ComputerId varchar(5) references tbl_computer(id), +beginTime datetime, +endTime datetime, +fee money +) +go + +insert into tbl_card values +('0023_ABC','555',98,'张军'), +('0025_bbd','abe',300,'朱俊'), +('0036_CCD','何柳',100,'何柳'), +('0045_YGR','00445_YGR',58,'证验'), +('0078_RJV','55885fg',600,'校庆'), +('0089_EDE','zhang',134,'张俊') + +insert into tbl_computer values +('02','0','25555'), +('03','1','55555'), +('04','0','66666'), +('05','1','88888'), +('06','0','688878'), +('B01','0','558558') + +insert into tbl_record values +(23,'0078_RJV','B01','2007-07-15 19:00:00','2007-07-15 21:00:00',20), +(34,'0025_bbd','02','2006-12-25 18:00:00','2006-12-25 22:00:00',23), +(45,'0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:25:00',50), +(46,'0023_ABC','03','2006-12-22 15:26:00','2006-12-22 22:55:00',6), +(47,'0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), +(48,'0023_ABC','03','2007-01-06 15:26:00','2007-01-06 22:55:00',6), +(55,'0023_ABC','03','2006-07-21 15:26:00','2006-07-21 22:55:00',20), +(64,'0045_YGR','04','2006-12-24 18:00:00','2006-12-24 22:00:00',300), +(65,'0025_bbd','02','2006-12-28 18:00:00','2006-12-28 22:00:00',23), +(98,'0025_bbd','02','2006-12-26 18:00:00','2006-12-26 22:00:00',23) +go + +select * from tbl_card +select * from tbl_computer +select * from tbl_record +go + +--1. 查询出用户名为'张军'的上网卡的上网记录,要求显示卡号,用户名,机器编号、开始时间、结束时间,和消费金额,并按消费金额降序排列 +select cardId 卡号,userName 用户名,ComputerId 机器编号,beginTime 开始时间,endTime 结束时间,fee 消费金额 +from tbl_record join tbl_card on tbl_record.cardId = tbl_card.id +where userName='张军' order by fee DESC + +--2. 查询出每台机器上的上网次数和消费的总金额 +select ComputerId 机器号,COUNT(ComputerId) 上网次数,SUM(fee) 消费的总金额 from tbl_record group by ComputerId + +--3. 查询出所有已经使用过的上网卡的消费总金额 +select cardId 卡号,SUM(fee) 消费总金额 from tbl_record group by cardId + +--4. 查询出从未消费过的上网卡的卡号和用户名 +select tbl_card.id 卡号,userName 用户名 from tbl_record right join tbl_card on tbl_record.cardId = tbl_card.id where tbl_record.id is null + +--5. 将密码与用户名一样的上网卡信息查询出来 +select a.* from tbl_card a,tbl_card b where a.passWord=b.passWord and a.userName=b.userName and a.id<>b.id + +--6. 查询出使用次数最多的机器号和使用次数 +select ComputerId 机器号,COUNT(ComputerId) 次数 from tbl_record group by ComputerId +having COUNT(ComputerId)=(select top 1 COUNT(ComputerId) from tbl_record group by ComputerId order by COUNT(ComputerId) DESC) + +--7. 查询出卡号是以'ABC'结尾的卡号,用户名,上网的机器号和消费金额 +select cardId 卡号,userName 用户名,ComputerId 机器号,fee 消费金额 from tbl_record +join tbl_card on tbl_record.cardId = tbl_card.id where cardId like '%ABC' + +--8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select cardId 卡号,userName 用户名,ComputerId 机器编号,beginTime 开始时间,endTime 结束时间,fee 消费金额 +from tbl_record join tbl_card on tbl_record.cardId = tbl_card.id +where DATENAME(DW,beginTime)='星期六' or DATENAME(DW,beginTime)='星期日' + +--9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select cardId 卡号,userName 用户名,ComputerId 机器编号,beginTime 开始时间,endTime 结束时间,fee 消费金额 +from tbl_record join tbl_card on tbl_record.cardId = tbl_card.id +where datediff(HH,BeginTime,Endtime)>12 + +--10. 查询出消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select cardId 卡号,userName 用户名,ComputerId 机器编号,beginTime 开始时间,endTime 结束时间,fee 消费金额 +from tbl_record join tbl_card on tbl_record.cardId = tbl_card.id +where fee in (select top 3 fee from tbl_record order by fee DESC) +order by fee DESC + +--11. 查询除消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select cardId 卡号,userName 用户名,ComputerId 机器编号,beginTime 开始时间,endTime 结束时间,fee 消费金额 +from tbl_record join tbl_card on tbl_record.cardId = tbl_card.id +where fee not in (select top 3 fee from tbl_record order by fee DESC) +order by fee DESC + +select * from tbl_record order by fee DESC \ No newline at end of file -- Gitee From 6a0f71b0b7af1ff070a35477d47d7578dee336e7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E8=8B=B1=E7=BE=A4?= <3374490732@qq.com> Date: Wed, 31 Mar 2021 20:42:46 +0800 Subject: [PATCH 089/144] =?UTF-8?q?=E6=96=B0=E5=BB=BA=20=E6=9D=8E=E8=8B=B1?= =?UTF-8?q?=E7=BE=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\346\235\216\350\213\261\347\276\244/.keep" | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\235\216\350\213\261\347\276\244/.keep" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\235\216\350\213\261\347\276\244/.keep" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\235\216\350\213\261\347\276\244/.keep" new file mode 100644 index 0000000..e69de29 -- Gitee From 948156d8ffd1e3abe6f631685c0294af778dd6e0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E8=8B=B1=E7=BE=A4?= <3374490732@qq.com> Date: Wed, 31 Mar 2021 20:43:12 +0800 Subject: [PATCH 090/144] =?UTF-8?q?=E6=9D=8E=E8=8B=B1=E7=BE=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\344\275\234\344\270\23212.sql" | 118 ++++++++++++++++++ 1 file changed, 118 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\235\216\350\213\261\347\276\244/\344\275\234\344\270\23212.sql" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\235\216\350\213\261\347\276\244/\344\275\234\344\270\23212.sql" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\235\216\350\213\261\347\276\244/\344\275\234\344\270\23212.sql" new file mode 100644 index 0000000..9cd0591 --- /dev/null +++ "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\235\216\350\213\261\347\276\244/\344\275\234\344\270\23212.sql" @@ -0,0 +1,118 @@ +use master +go +create database tbl +on +( + name='tbl', + filename='D:\tbl.mdf', + size=50MB, + filegrowth=10% +) +log on +( + name='tbl_log', + filename='D:\tbl_log.ldf', + size=50MB, + filegrowth=10% +) + +go +use tbl +go +--上网卡信息表 +create table tbl_card +( + id char(30) primary key not null, + passWord varchar(50) not null, + balance money, + userName nvarchar(10) not null +) +insert into tbl_card values +('0023_ABC','555',98,'张军'), +('0025_bbd','abe',300,'朱俊'), +('0036_CCD','何柳',100,'何柳'), +('0045_YGR','00445_YGR',58,'证验'), +('0078_RJV','55885fg',600,'校庆'), +('0089_EDE','zhang',134,'张俊') + +--网吧机器说明表 +create table tbl_computer +( + id char(30) primary key not null, + onUse int not null check(onUse='0' or onUse='1'), + note varchar(100) not null +) +insert into tbl_computer values +('02','0','25555'), +('03','1','55555'), +('04','0','66666'), +('05','1','88888'), +('06','0','688878'), +('B01','0','558558') + + +--上网记录表 +create table tbl_record +( + id int primary key not null, + cardId char(30) not null references tbl_card(id), + ComputerId char(30) not null references tbl_computer(id), + beginTime datetime, + endTime datetime, + fee money +) + +insert into tbl_record values +(23,'0078_RJV','B01','2007-07-15 19:00:00','2007-07-15 21:00:00',20), +(34,'0025_bbd','02','2006-12-25 18:00:00','2006-12-25 22:00:00',23), +(45,'0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:25:00',50), +(46,'0023_ABC','03','2006-12-23 15:26:00','2006-12-22 22:55:00',6), +(47,'0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), +(48,'0023_ABC','03','2007-01-06 15:26:00','2007-01-06 22:55:00',6), +(55,'0023_ABC','03','2006-07-21 15:26:00','2006-07-21 22:55:00',20), +(64,'0045_YGR','04','2006-12-24 18:00:00','2006-12-24 22:00:00',3), +(65,'0025_bbd','02','2006-12-28 18:00:00','2006-12-28 22:00:00',23), +(98,'0025_bbd','02','2006-12-26 18:00:00','2006-12-26 22:00:00',23) + + +select * from tbl_card +select * from tbl_computer +select * from tbl_record + +--请完成以下题目: +--1. 查询出用户名为'张军'的上网卡的上网记录,要求显示卡号,用户名,机器编号、开始时间、结束时间,和消费金额,并按消费金额降序排列 +select tbl_card.id 卡号,tbl_card.userName 用户名,tbl_record.ComputerId 机器编号,tbl_record.beginTime 开始时间, +tbl_record.endTime 结束时间,tbl_record.fee 消费金额 from tbl_record +inner join tbl_card on tbl_card.id=tbl_record.cardId where tbl_card.userName='张军'order by tbl_record.fee desc +--2. 查询出每台机器上的上网次数和消费的总金额 +select tbl_computer.id 机器编号, COUNT(ComputerId) 上网次数,SUM(fee) 消费的总金额 from tbl_record inner join tbl_computer on tbl_computer.id=tbl_record.ComputerId +group by tbl_computer.id +--3. 查询出所有已经使用过的上网卡的消费总金额 +select computerId, SUM(fee) 消费总金额 from tbl_record GROUP BY computerId +--4. 查询出从未消费过的上网卡的卡号和用户名 +select CD.id,CD.userName from tbl_card CD inner join tbl_computer CR on CR.id=CD.id where CR.onUse='0' group by CD.id,CD.userName +--5. 将密码与用户名一样的上网卡信息查询出来 +select * from tbl_card where tbl_card.userName=tbl_card.passWord +--6. 查询出使用次数最多的机器号和使用次数 +select top 1 COUNT(id) 使用次数最多,ComputerId 机器号 from tbl_record group by ComputerId order by COUNT(id) desc +--7. 查询出卡号是以'ABC'结尾的卡号,用户名,上网的机器号和消费金额 +select userName,ComputerId,fee from tbl_card C +inner join tbl_record R ON R.cardId=C.id +where C.id like '%ABC' + +select RD.cardId 卡号,CD.userName 用户名,RD.ComputerId 上网的机器号,RD.fee 消费金额 from tbl_record RD +inner join tbl_card CD on CD.id=RD.cardId +where RD.cardId LIKE '%ABC' +--8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select RD.cardId 上网的卡号,CD.userName 用户名,RD.ComputerId 机器号, +RD.beginTime 开始时间,RD.endTime 结束时间,RD.fee 消费金额 from tbl_record RD +inner join tbl_card CD on CD.id=RD.cardId where DATENAME(DW,beginTime)='星期六' or DATENAME(DW,beginTime)='星期天' +--9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select cardId 卡号,userName 用户名,ComputerId 机器编号,beginTime 开始时间,endTime 结束时间,fee 消费金额 +from tbl_record join tbl_card on tbl_record.cardId = tbl_card.id +where datediff(HH,BeginTime,Endtime)>12 +--10. 查询出消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select cardId 卡号,userName 用户名,ComputerId 机器编号,beginTime 开始时间,endTime 结束时间,fee 消费金额 +from tbl_record join tbl_card on tbl_record.cardId = tbl_card.id +where fee in (select top 3 fee from tbl_record order by fee DESC) +order by fee DESC \ No newline at end of file -- Gitee From 31eda6c6797d3bee30e2b5d5512b537f5ef39167 Mon Sep 17 00:00:00 2001 From: sdj408408 <442865611@qq.com> Date: Wed, 31 Mar 2021 20:44:44 +0800 Subject: [PATCH 091/144] di2 --- .../SQLQuery1.sql" | 134 ++++++++++++++++++ 1 file changed, 134 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\213\217\346\235\234\345\206\233/SQLQuery1.sql" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\213\217\346\235\234\345\206\233/SQLQuery1.sql" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\213\217\346\235\234\345\206\233/SQLQuery1.sql" new file mode 100644 index 0000000..d0376e1 --- /dev/null +++ "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\213\217\346\235\234\345\206\233/SQLQuery1.sql" @@ -0,0 +1,134 @@ +use master +go +create database tbl +on +( + name='tbl', + filename='D:\SQL\tbl.mdf', + size=5MB, + maxsize=20MB, + filegrowth=10% +) +log on +( + name='tbl_log', + filename='D:\SQL\tbl_log.ldf', + size=5MB, + maxsize=20MB, + filegrowth=10% +) +go + +use tbl +go + +create table tbl_card +( +id varchar(10) primary key, +passWord varchar(10), +balance varchar(5), +userName nvarchar(2) +) +go + +create table tbl_computer +( +id varchar(5) primary key, +onUse varchar(1) check(onUse=0 or onUse=1), +note varchar(10) +) +go + +create table tbl_record +( +id varchar(2) primary key, +cardId varchar(10) references tbl_card(id), +ComputerId varchar(5) references tbl_computer(id), +beginTime datetime, +endTime datetime, +fee money +) +go + +insert into tbl_card values +('0023_ABC','555',98,'张军'), +('0025_bbd','abe',300,'朱俊'), +('0036_CCD','何柳',100,'何柳'), +('0045_YGR','00445_YGR',58,'证验'), +('0078_RJV','55885fg',600,'校庆'), +('0089_EDE','zhang',134,'张俊') + +insert into tbl_computer values +('02','0','25555'), +('03','1','55555'), +('04','0','66666'), +('05','1','88888'), +('06','0','688878'), +('B01','0','558558') + +insert into tbl_record values +(23,'0078_RJV','B01','2007-07-15 19:00:00','2007-07-15 21:00:00',20), +(34,'0025_bbd','02','2006-12-25 18:00:00','2006-12-25 22:00:00',23), +(45,'0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:25:00',50), +(46,'0023_ABC','03','2006-12-22 15:26:00','2006-12-22 22:55:00',6), +(47,'0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), +(48,'0023_ABC','03','2007-01-06 15:26:00','2007-01-06 22:55:00',6), +(55,'0023_ABC','03','2006-07-21 15:26:00','2006-07-21 22:55:00',20), +(64,'0045_YGR','04','2006-12-24 18:00:00','2006-12-24 22:00:00',300), +(65,'0025_bbd','02','2006-12-28 18:00:00','2006-12-28 22:00:00',23), +(98,'0025_bbd','02','2006-12-26 18:00:00','2006-12-26 22:00:00',23) +go + +select * from tbl_card +select * from tbl_computer +select * from tbl_record +go + +--1. 查询出用户名为'张军'的上网卡的上网记录,要求显示卡号,用户名,机器编号、开始时间、结束时间,和消费金额,并按消费金额降序排列 +select cardId 卡号,userName 用户名,ComputerId 机器编号,beginTime 开始时间,endTime 结束时间,fee 消费金额 +from tbl_record join tbl_card on tbl_record.cardId = tbl_card.id +where userName='张军' order by fee DESC + +--2. 查询出每台机器上的上网次数和消费的总金额 +select ComputerId 机器号,COUNT(ComputerId) 上网次数,SUM(fee) 消费的总金额 from tbl_record group by ComputerId + +--3. 查询出所有已经使用过的上网卡的消费总金额 +select cardId 卡号,SUM(fee) 消费总金额 from tbl_record group by cardId + +--4. 查询出从未消费过的上网卡的卡号和用户名 +select tbl_card.id 卡号,userName 用户名 from tbl_record right join tbl_card on tbl_record.cardId = tbl_card.id where tbl_record.id is null + +--5. 将密码与用户名一样的上网卡信息查询出来 +select a.* from tbl_card a,tbl_card b where a.passWord=b.passWord and a.userName=b.userName and a.id<>b.id + +--6. 查询出使用次数最多的机器号和使用次数 +select ComputerId 机器号,COUNT(ComputerId) 次数 from tbl_record group by ComputerId +having COUNT(ComputerId)=(select top 1 COUNT(ComputerId) from tbl_record group by ComputerId order by COUNT(ComputerId) DESC) + +--7. 查询出卡号是以'ABC'结尾的卡号,用户名,上网的机器号和消费金额 +select cardId 卡号,userName 用户名,ComputerId 机器号,fee 消费金额 from tbl_record +join tbl_card on tbl_record.cardId = tbl_card.id where cardId like '%ABC' + +--8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select cardId 卡号,userName 用户名,ComputerId 机器编号,beginTime 开始时间,endTime 结束时间,fee 消费金额 +from tbl_record join tbl_card on tbl_record.cardId = tbl_card.id +where DATENAME(DW,beginTime)='星期六' or DATENAME(DW,beginTime)='星期日' + +--9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select cardId 卡号,userName 用户名,ComputerId 机器编号,beginTime 开始时间,endTime 结束时间,fee 消费金额 +from tbl_record join tbl_card on tbl_record.cardId = tbl_card.id +where datediff(HH,BeginTime,Endtime)>12 + +--10. 查询出消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select cardId 卡号,userName 用户名,ComputerId 机器编号,beginTime 开始时间,endTime 结束时间,fee 消费金额 +from tbl_record join tbl_card on tbl_record.cardId = tbl_card.id +where fee in (select top 3 fee from tbl_record order by fee DESC) +order by fee DESC + +--11. 查询除消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select cardId 卡号,userName 用户名,ComputerId 机器编号,beginTime 开始时间,endTime 结束时间,fee 消费金额 +from tbl_record join tbl_card on tbl_record.cardId = tbl_card.id +where fee not in (select top 3 fee from tbl_record order by fee DESC) +order by fee DESC + +select * from tbl_record order by fee DESC \ No newline at end of file -- Gitee From 4dd1ed23f09e59f38f17d6d4a070167d7c681dc1 Mon Sep 17 00:00:00 2001 From: yinchenxu <474746235@qq.com> Date: Wed, 31 Mar 2021 20:48:49 +0800 Subject: [PATCH 092/144] =?UTF-8?q?=E6=AE=B7=E6=99=A8=E6=97=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../2.sql" | 109 ++++++++++++++++++ 1 file changed, 109 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\256\267\346\231\250\346\227\255/2.sql" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\256\267\346\231\250\346\227\255/2.sql" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\256\267\346\231\250\346\227\255/2.sql" new file mode 100644 index 0000000..ec43a13 --- /dev/null +++ "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\256\267\346\231\250\346\227\255/2.sql" @@ -0,0 +1,109 @@ +use master +go +create database TBL +on +( + name='TBL', + filename='D:\SQL\TBL.mdf', + size=5MB, + maxsize=20MB, + filegrowth=10% +) +log on +( + name='TBL_log', + filename='D:\SQL\TBL_log.ldf', + size=5MB, + maxsize=20MB, + filegrowth=10% +) +go + +use TBL +go +create table TBL_Card +( + CardID char(30) primary key not null, + PassWord varchar(50) not null, + Balance money , + UserName nvarchar(20) +) + +create table TBL_Computer +( + CID char(30) primary key , + OnUse char(1) check(OnUse in(1,0)), + note text +) + +create table TBL_Record +( + RID int primary key , + CardID char(30) references TBL_Card(CardID), + CID char(30) references TBL_Computer(CID), + BeginTime datetime, + Endtime datetime, + fee money +) +go + +insert into TBL_Card values +('0023_ABC','555',98,'张军'), +('0025_bbd','abe',300,'朱俊'), +('0036_CCD','何柳',100,'何柳'), +('0045_YGR','00445_YGR',58,'证验'), +('0078_RJV','55885fg',600,'校庆'), +('0089_EDE','zhang',134,'张俊') + +insert into TBL_Computer values +('02','0','25555'), +('03','1','55555'), +('04','0','66666'), +('05','1','88888'), +('06','0','688878'), +('B01','0','558558') + +insert into TBL_Record values +(23,'0078_RJV','B01','2007-07-15 19:00:00','2007-07-15 21:00:00',20), +(34,'0025_bbd','02','2006-12-25 18:00:00','2006-12-25 22:00:00',23), +(45,'0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:25:00',50), +(46,'0023_ABC','03','2006-12-23 15:26:00','2006-12-22 22:55:00',6), +(47,'0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), +(48,'0023_ABC','03','2007-01-06 15:26:00','2007-01-06 22:55:00',6), +(55,'0023_ABC','03','2006-07-21 15:26:00','2006-07-21 22:55:00',20), +(64,'0045_YGR','04','2006-12-24 18:00:00','2006-12-24 22:00:00',3), +(65,'0025_bbd','02','2006-12-28 18:00:00','2006-12-28 22:00:00',23), +(98,'0025_bbd','02','2006-12-26 18:00:00','2006-12-26 22:00:00',23) +go + +select * from TBL_Card +select * from TBL_Computer +select * from TBL_Record +--1. 查询出用户名为'张军'的上网卡的上网记录,要求显示卡号,用户名,机器编号、开始时间、结束时间,和消费金额,并按消费金额降序排列 +select C.CardID 卡号 , UserName 用户名 , CID 机器编号 , BeginTime 开始时间 , Endtime 结束时间 , fee 消费金额 from TBL_Record R inner join TBL_Card C on R.CardID=C.CardID where UserName='张军' order by fee DESC +--2. 查询出每台机器上的上网次数和消费的总金额 +select CID 机器编号 , COUNT(*) 上网次数 , SUM(fee) 总金额 from TBL_Record R group by CID +--3. 查询出所有已经使用过的上网卡的消费总金额 +select CardID 卡号 , SUM(fee) 总金额 from TBL_Record group by CardID +--4. 查询出从未消费过的上网卡的卡号和用户名 +select C.CardID 卡号 , UserName 用户名 , RID from TBL_Record R right join TBL_Card C on R.CardID=C.CardID group by C.CardID,UserName,RID having RID is null or RID='' +--5. 将密码与用户名一样的上网卡信息查询出来 +select A.* from TBL_Card A,TBL_Card B where A.PassWord=B.UserName +--6. 查询出使用次数最多的机器号和使用次数 +--select top 1 COUNT(*) from TBL_Record group by CID order by COUNT(*) DESC +select CID 机器号 , COUNT(*) 使用次数 from TBL_Record group by CID having COUNT(*)=(select top 1 COUNT(*) from TBL_Record group by CID order by COUNT(*) DESC) +--7. 查询出卡号是以'ABC'结尾的卡号,用户名,上网的机器号和消费金额 +select C.CardID 卡号 , UserName 用户名 , CID 机器编号 , fee 消费金额 from TBL_Record R inner join TBL_Card C on R.CardID=C.CardID where C.CardID like '%ABC' +--8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select C.CardID 卡号 , UserName 用户名 , CID 机器编号 , BeginTime 开始时间 , Endtime 结束时间 , fee 消费金额 from TBL_Record R inner join TBL_Card C on R.CardID=C.CardID where datename(weekday,BeginTime)='星期六' or datepart(weekday,BeginTime)=1 +--9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select C.CardID 卡号 , UserName 用户名 , CID 机器编号 , BeginTime 开始时间 , Endtime 结束时间 , fee 消费金额 from TBL_Record R inner join TBL_Card C on R.CardID=C.CardID where DATEDIFF(HH,BeginTime,Endtime)>12 +--10. 查询出消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select C.CardID 卡号 , UserName 用户名 , CID 机器编号 , BeginTime 开始时间 , Endtime 结束时间 , fee 消费金额 from TBL_Record R +inner join TBL_Card C on R.CardID=C.CardID +where RID not in (select top 3 RID from TBL_Record order by fee DESC) +group by C.CardID,UserName,CID,BeginTime,Endtime,fee +--11. 查询除消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select top 3 RID from TBL_Record order by fee DESC +select C.CardID 卡号 , UserName 用户名 , CID 机器编号 , BeginTime 开始时间 , Endtime 结束时间 , fee 消费金额 from TBL_Record R inner join TBL_Card C on R.CardID=C.CardID where RID in (select top 3 RID from TBL_Record order by fee DESC) +group by C.CardID , UserName , CID , BeginTime , Endtime , fee -- Gitee From b780a0217cd7361ba88cb05bbc1f65fca44abd22 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BB=84=E5=A9=B7=E8=8A=B3?= <1773618245@qq.com> Date: Wed, 31 Mar 2021 20:51:55 +0800 Subject: [PATCH 093/144] =?UTF-8?q?=E6=96=B0=E5=BB=BA=20=E9=BB=84=E5=A9=B7?= =?UTF-8?q?=E8=8A=B3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\351\273\204\345\251\267\350\212\263/.keep" | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\351\273\204\345\251\267\350\212\263/.keep" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\351\273\204\345\251\267\350\212\263/.keep" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\351\273\204\345\251\267\350\212\263/.keep" new file mode 100644 index 0000000..e69de29 -- Gitee From c7472a63bd9bc909c395dcea2c8c1ddeb1178490 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BB=84=E5=A9=B7=E8=8A=B3?= <1773618245@qq.com> Date: Wed, 31 Mar 2021 20:52:20 +0800 Subject: [PATCH 094/144] =?UTF-8?q?=E9=BB=84=E5=A9=B7=E8=8A=B3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SQLQuery2.sql" | 171 ++++++++++++++++++ 1 file changed, 171 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\351\273\204\345\251\267\350\212\263/SQLQuery2.sql" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\351\273\204\345\251\267\350\212\263/SQLQuery2.sql" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\351\273\204\345\251\267\350\212\263/SQLQuery2.sql" new file mode 100644 index 0000000..6c89833 --- /dev/null +++ "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\351\273\204\345\251\267\350\212\263/SQLQuery2.sql" @@ -0,0 +1,171 @@ + +--首先创建网吧计费系统的数据库,表结构和数据如2.bmp所示,表的说明如下: +create database wangba +go +use wangba +go +--表一为上网卡信息表(tbl_card) +--id: 卡号,主键 +--passWord:密码 +--balance:卡上的余额 +--userName:该上网卡所属的用户名 +create table tbl_card +( +id_card char(30) primary key , +passWord nvarchar(20), +balance int, +userName nvarchar(50) +) +insert into tbl_card values ('0023_ABC','555',98,'张军'),('0025_bbd','abe',300,'朱俊'),('0036_CCD','何柳',100,'何柳'), +('0045_YGR','0045_YGR',58,'证验'),('0078_RJV','55885fg',600,'校庆'),('0089_EDE','zhang',134,'张峻') + + + +--表2为网吧机器说明表(tbl_computer) +--id:机器编号,主键 +--onUse:该机器是否正在使用,0为未使用,1为正在使用 +--note:该机器的说明 +create table tbl_computer +( +id_boot char(30) primary key, +onUse char(2) check(onUse='1' or onUse='0'), +note char(30) +) +insert into tbl_computer values ('02','0','2555'),('03','1','5555'),('04','0','66666'),('05','1','88888'), +('06','0','68878'),('B01','0','558558') + + + +--表3为上网记录表(tbl_record): +--id:记录编号,主键 +--cardId:本次上网的卡号,外键 +--ComputerId:本次上网记录所使用的机器号,外键 +--beginTime:本次上网记录的开始时间 +--endTime:本次上网记录的结束时间 +--fee:本次上网的费用 +create table tbl_record +( +id_record char(30) primary key , +cardId char(30) references tbl_card(id_card), +ComputerId char(30) references tbl_computer(id_boot), +beginTime datetime, +endTime datetime, +fee int +) +insert into tbl_record values +('23','0078_RJV','B01','2007-07-15 19:00:00','2007-07-15 21:00:00','20'), +('34','0025_bbd','02','2006-12-25 18:00:00','2007-07-15 22:00:00','23'), +('45','0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00','50'), +('46','0023_ABC','03','2006-12-22 15:26:00','2006-12-22 22:55:00','6'), +('47','0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00','50'), +('48','0023_ABC','03','2007-01-16 15:26:00','2007-01-16 22:55:00','6'), +('55','0023_ABC','03','2007-07-21 15:26:00','2007-07-21 22:55:00','50'), +('64','0045_YGR','04','2006-12-24 18:00:00','2006-12-24 22:00:00','3'), +('65','0025_bbd','02','2006-12-28 18:00:00','2006-12-28 22:00:00','23'), +('98','0025_bbd','02','2006-12-26 18:00:00','2006-12-26 22:00:00','23') + + + + +--请完成以下题目: +--1. 查询出用户名为'张军'的上网卡的上网记录,要求显示卡号,用户名,机器编号、开始时间、结束时间,和消费金额,并按消费 +--金额降序排列 +select id_card,userName,id_boot,beginTime,endTime,fee from tbl_card car inner join tbl_record rec on car.id_card=rec.cardId + inner join +tbl_computer com on com.id_boot=rec.ComputerId where userName='张军'order by fee desc + +select * from tbl_card +select * from tbl_computer +select * from tbl_record + +--2. 查询出每台机器上的上网次数和消费的总金额 +select ComputerId 电脑编号,count(*),sum(fee) from tbl_computer com inner join tbl_record rec on com.id_boot=rec.ComputerId group by ComputerId +--3. 查询出所有已经使用过的上网卡的消费总金额 +select id_card 上网卡编号, sum(fee) from tbl_record rec inner join tbl_card car on rec.cardId=car.id_card group by id_card +--4. 查询出从未消费过的上网卡的卡号和用户名 +select id_card 上网卡编号, userName from tbl_record rec right join tbl_card car on rec.cardId=car.id_card where fee is null group by id_card,userName +--5. 将密码与用户名一样的上网卡信息查询出来 +select A.* from tbl_card A INNER JOIN tbl_card B on A.id_card=B.id_card and A.passWord=B.userName and A.userName=B.passWord +--6. 查询出使用次数最多的机器号和使用次数 +select TOP 1 ComputerId,COUNT(*) 使用次数 from tbl_record group by ComputerId ORDER BY 使用次数 DESC +--7. 查询出卡号是以'ABC'结尾的卡号,用户名,上网的机器号和消费金额 +select id_card,userName,ComputerId,fee from tbl_card car inner join tbl_record rec on car.id_card=rec.cardId where id_card like '%ABC' +--8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select DATENAME(DW,GETDATE()) +select * from tbl_record where datename (dw,beginTime)='星期日'or datename(dw,beginTime)='星期六' +--select * from tbl_record where datename(dw,列名)='' +--9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select * from tbl_record where endTime-beginTime>12 + +select cardId 卡号,userName 用户名,ComputerId 机器编号,beginTime 开始时间,endTime 结束时间,fee 消费金额 from tbl_record +join tbl_card on tbl_record.cardId = tbl_card.id_card +where datediff(HH,BeginTime,Endtime)>12 +--10. 查询除消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select top 3 * from tbl_record order by fee desc + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + -- Gitee From ed73bdb1d42de975767e64d42e289157fbe4c804 Mon Sep 17 00:00:00 2001 From: pp20020501 <2382571669@qq.com> Date: Wed, 31 Mar 2021 20:56:24 +0800 Subject: [PATCH 095/144] =?UTF-8?q?=E6=96=B0=E5=BB=BA=20=E6=BD=98=E6=99=B6?= =?UTF-8?q?=E5=A9=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\346\275\230\346\231\266\345\251\267/.keep" | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\275\230\346\231\266\345\251\267/.keep" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\275\230\346\231\266\345\251\267/.keep" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\275\230\346\231\266\345\251\267/.keep" new file mode 100644 index 0000000..e69de29 -- Gitee From 6b0a572c2f469117da1f03dd6ba6d92eaa0393b6 Mon Sep 17 00:00:00 2001 From: pp20020501 <2382571669@qq.com> Date: Wed, 31 Mar 2021 20:56:49 +0800 Subject: [PATCH 096/144] =?UTF-8?q?=E6=BD=98=E6=99=B6=E5=A9=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...2\344\272\214\344\273\243\347\240\201.txt" | 144 ++++++++++++++++++ 1 file changed, 144 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\275\230\346\231\266\345\251\267/\344\275\234\344\270\232\344\272\214\344\273\243\347\240\201.txt" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\275\230\346\231\266\345\251\267/\344\275\234\344\270\232\344\272\214\344\273\243\347\240\201.txt" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\275\230\346\231\266\345\251\267/\344\275\234\344\270\232\344\272\214\344\273\243\347\240\201.txt" new file mode 100644 index 0000000..b585266 --- /dev/null +++ "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\275\230\346\231\266\345\251\267/\344\275\234\344\270\232\344\272\214\344\273\243\347\240\201.txt" @@ -0,0 +1,144 @@ +use master +go + +create database SQL +on +( + name='SQL', + filename='D:\SQL.mdf', + size=5MB, + maxsize=5MB, + filegrowth=10% +) +log on +( + name='SQL_log', + filename='D:\SQL_log.ldf', + size=5MB, + maxsize=5MB, + filegrowth=10% +) +go + +use SQL +go + +--表一为上网卡信息表(tbl_card) +--id: 卡号,主键 +--passWord:密码 +--balance:卡上的余额 +--userName:该上网卡所属的用户名 +create table card +( + CardID varchar(20) primary key, + PassWord varchar(10), + Balance money, + UserName varchar(20) +) + +insert into card values ('0023_ABC','555',98,'张军'), +('0025_bbd','abe',300,'朱俊'), +('0036_CCD','何柳',100,'何柳'), +('0045_YGR','0045_YGR',58,'证验'), +('0078_RJV','55885fg',600,'校庆'), +('0089_EDE','zhang',134,'张峻') + +select * from card + +--表2为网吧机器说明表(tbl_computer) +--id:机器编号,主键 +--onUse:该机器是否正在使用,0为未使用,1为正在使用 +--note:该机器的说明 +create table computer +( + ComputerID varchar(10) primary key, + OnUse int, + Note text +) + +insert into computer values('02',0,'25555'), +('03',1,'55555'), +('04',0,'66666'), +('05',1,'88888'), +('06',0,'688878'), +('B01',0,'558558') + +select * from computer + +--表3为上网记录表(tbl_record): +--id:记录编号,主键 +--cardId:本次上网的卡号,外键 +--ComputerId:本次上网记录所使用的机器号,外键 +--beginTime:本次上网记录的开始时间 +--endTime:本次上网记录的结束时间 +--fee:本次上网的费用 +create table Record +( + ID int primary key, + CardID varchar(20) references card(CardID), + ComputerID varchar(10) references computer(ComputerID), + BeginTime datetime, + EndTime datetime, + Fee money +) + +insert into Record values(23,'0078_RJV','B01','2007-07-15 19:00:00','2007-07-15 21:00:00',20), +(34,'0025_bbd','02','2006-12-25 18:00:00','2006-12-25 22:00:00',23), +(45,'0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), +(46,'0023_ABC','03','2006-12-22 15:26:00','2006-12-22 22:55:00',6), +(47,'0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), +(48,'0023_ABC','03','2007-01-06 15:26:00','2007-01-06 22:55:00',6), +(55,'0023_ABC','03','2006-07-21 15:26:00','2006-07-21 22:55:00',50), +(64,'0045_YGR','04','2006-12-24 18:00:00','2006-12-24 22:00:00',300), +(65,'0025_bbd','02','2006-12-28 18:00:00','2006-12-28 22:00:00',23), +(98,'0025_bbd','02','2006-12-26 18:00:00','2006-12-26 22:00:00',23) + +select * from card +select * from computer +select * from Record + +--请完成以下题目: +--1. 查询出用户名为'张军'的上网卡的上网记录,要求显示卡号,用户名,机器编号、开始时间、结束时间,和消费金额,并按消费金额降序排列 +select card.CardID 卡号,UserName 用户名,ComputerID 机器编号,BeginTime 开始时间,EndTime 结束时间,Fee 消费金额 from Record +inner join card on card.CardID=Record.CardID where UserName='张军' order by Fee desc + +--2. 查询出每台机器上的 上网次数 和消费的总金额 +select computer.ComputerID 机器编号,count(Record.ComputerID)上网次数,sum(Fee )消费的总金额 from computer +inner join Record on computer.ComputerID=Record.ComputerID group by computer.ComputerID + +--3. 查询出 所有已经使用过的 上网卡的消费总金额 +select computer.ComputerID,sum(Fee )消费的总金额 from computer +left join Record on computer.ComputerID=Record.ComputerID where OnUse=1 group by computer.ComputerID + +--4. 查询出 从未消费过的上网卡的 卡号和 用户名 +select card.CardID 卡号,UserName 用户名 from card +left join Record on card.CardID=Record.CardID +where fee is null + +--5. 将 密码与用户名一样的 上网卡信息查询出来 +select a.* from card a ,card b where a.UserName=b.PassWord + +--6. 查询出 使用次数最多的机器号 和使用次数 +select ComputerID 机械号,count(ComputerID)使用次数 from Record group by ComputerID +having count(ComputerID) = (select top 1 count(ComputerID)使用次数 from Record group by ComputerID order by COUNT(ComputerID) desc) + +--7. 查询出卡号是以 'ABC'结尾的卡号, 用户名, 上网的机器号和 消费金额 +select Record.CardID 卡号,UserName 用户名 ,ComputerID 机械号,Fee 消费金额 from card +inner join Record on card.CardID=Record.CardID +where Record.CardID like '%ABC' + +--8. 查询出是 周六、周天上网的记录, 要求显示上网的卡号, 用户名, 机器号, 开始时间、 结束时间和 消费金额 +select Record.CardID 卡号,UserName 用户名 ,ComputerID 机器号,BeginTime 开始时间,EndTime 结束时间,Fee 消费金额 from card +inner join Record on card.CardID=Record.CardID +where datename(DW,BeginTime)='星期日' or DATEPART(DW,BeginTime)='7' + +--9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select Record.CardID 卡号,UserName 用户名 ,ComputerID 机器号,BeginTime 开始时间,EndTime 结束时间,Fee 消费金额 +from Record join Card on Record.cardId = Card.CardID +where datediff(HH,BeginTime,Endtime)>12 + +--10. 查询除消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select Card.cardId 卡号,userName 用户名,ComputerId 机器编号,beginTime 开始时间,endTime 结束时间,fee 消费金额 +from Record join Card on Record.cardId =Card.CardID +where fee in (select top 3 fee from Record order by fee DESC) +order by fee DESC \ No newline at end of file -- Gitee From 769fbf6ca11e80cfd7d29aef1d044c83f51c5619 Mon Sep 17 00:00:00 2001 From: cdy9946 Date: Wed, 31 Mar 2021 21:01:52 +0800 Subject: [PATCH 097/144] fs --- .../2.bmp" | Bin 1116774 -> 0 bytes .../50\351\242\230.txt" | 415 ------------------ .../\344\275\234\344\270\232\344\272\214.txt" | 47 -- .../SQLQuery2.sql" | 16 +- 4 files changed, 11 insertions(+), 467 deletions(-) delete mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\277\201\346\231\266\350\276\211/2.bmp" delete mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\277\201\346\231\266\350\276\211/50\351\242\230.txt" delete mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\277\201\346\231\266\350\276\211/\344\275\234\344\270\232\344\272\214.txt" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\277\201\346\231\266\350\276\211/2.bmp" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\277\201\346\231\266\350\276\211/2.bmp" deleted file mode 100644 index 93b6faf52d8cb48c72c03fccb90af8e20f23d80a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1116774 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 B#IpbZ diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\277\201\346\231\266\350\276\211/50\351\242\230.txt" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\277\201\346\231\266\350\276\211/50\351\242\230.txt" deleted file mode 100644 index 44a3a0a..0000000 --- "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\277\201\346\231\266\350\276\211/50\351\242\230.txt" +++ /dev/null @@ -1,415 +0,0 @@ --- 练习题目: - - - --- 1.查询"数学 "课程比" 语文 "课程成绩高的学生的信息及课程分数 - - - --- 1.1 查询同时存在" 数学 "课程和" 语文 "课程的情况 - - - --- 1.2 查询存在" 数学 "课程但可能不存在" 语文 "课程的情况(不存在时显示为 null ) - - - --- 1.3 查询不存在" 数学 "课程但存在" 语文 "课程的情况 - - - --- 2.查询平均成绩大于等于 60 分的同学的学生编号和学生姓名和平均成绩 - - - --- 3.查询在 成绩 表存在成绩的学生信息 - - - --- 4.查询所有同学的学生编号、学生姓名、选课总数、所有课程的总成绩(没成绩的显示为 null ) - - - --- 4.1 查有成绩的学生信息 - - - --- 5.查询「李」姓老师的数量 - - - --- 6.查询学过「张三」老师授课的同学的信息 - - - --- 7.查询没有学全所有课程的同学的信息 - - - --- 8.查询至少有一门课与学号为" 01 "的同学所学相同的同学的信息 - - - --- 9.查询和" 01 "号的同学学习的课程 完全相同的其他同学的信息 - - - --- 10.查询没学过"张三"老师讲授的任一门课程的学生姓名 - - - --- 11.查询两门及其以上不及格课程的同学的学号,姓名及其平均成绩 - - - --- 12.检索" 数学 "课程分数小于 60,按分数降序排列的学生信息 - - - --- 13.按平均成绩从高到低显示所有学生的所有课程的成绩以及平均成绩 - - - --- 14.查询各科成绩最高分、最低分和平均分: - - - --- 15.以如下形式显示:课程 ID,课程 name,最高分,最低分,平均分,及格率,中等率,优良率,优秀率 - -/* - - 及格为>=60,中等为:70-80,优良为:80-90,优秀为:>=90 - - - - 要求输出课程号和选修人数,查询结果按人数降序排列,若人数相同,按课程号升序排列 - - - - 按各科成绩进行排序,并显示排名, Score 重复时保留名次空缺 - -*/ - - - --- 15.1 按各科成绩进行排序,并显示排名, Score 重复时合并名次 - - - --- 16.查询学生的总成绩,并进行排名,总分重复时保留名次空缺 - - - --- 16.1 查询学生的总成绩,并进行排名,总分重复时不保留名次空缺 - - - --- 17.统计各科成绩各分数段人数:课程编号,课程名称,[100-85],[85-70],[70-60],[60-0] 及所占百分比 - - - --- 18.查询各科成绩前三名的记录 - - - --- 19.查询每门课程被选修的学生数 - - - --- 20.查询出只选修两门课程的学生学号和姓名 - - - --- 21.查询男生、女生人数 - - - --- 22.查询名字中含有「风」字的学生信息 - - - --- 23.查询同名同性学生名单,并统计同名人数 - - - --- 24.查询 1990 年出生的学生名单 - - - --- 25.查询每门课程的平均成绩,结果按平均成绩降序排列,平均成绩相同时,按课程编号升序排列 - - - --- 26.查询平均成绩大于等于 85 的所有学生的学号、姓名和平均成绩 - - - --- 27.查询课程名称为「数学」,且分数低于 60 的学生姓名和分数 - - - --- 28.查询所有学生的课程及分数情况(存在学生没成绩,没选课的情况) - - - --- 29.查询任何一门课程成绩在 70 分以上的姓名、课程名称和分数 - - - --- 30.查询不及格的课程 - - - --- 31.查询课程编号为 01 且课程成绩在 80 分以上的学生的学号和姓名 - - - --- 32.求每门课程的学生人数 - - - --- 33.成绩不重复,查询选修「张三」老师所授课程的学生中,成绩最高的学生信息及其成绩 - - - ---34.成绩有重复的情况下,查询选修「张三」老师所授课程的学生中,成绩最高的学生信息及其成绩 - - - --- 35.查询不同课程成绩相同的学生的学生编号、课程编号、学生成绩 - - - --- 36.查询每门功成绩最好的前两名 - - - --- 37.统计每门课程的学生选修人数(超过 5 人的课程才统计)。 - - - --- 38.检索至少选修两门课程的学生学号 - - - --- 39.查询选修了全部课程的学生信息 - - - --- 40.查询各学生的年龄,只按年份来算 - - - --- 41.按照出生日期来算,当前月日 < 出生年月的月日则,年龄减一 - - - --- 42.查询本周过生日的学生 - - - --- 43.查询下周过生日的学生 - - - --- 44.查询本月过生日的学生 - - - --- 45.查询下月过生日的学生 - -create database ClassicDb - -GO - - - -use ClassicDb - -GO - - - -create table StudentInfo - -( - - Id int PRIMARY key not null IDENTITY, - - StudentCode nvarchar(80), - - StudentName nvarchar(80), - - Birthday date not null, - - Sex nvarchar(2), - - ClassId int not null - -) - - - -GO - - - --- select * from StudentInfo - - - -insert into StudentInfo (StudentCode,StudentName,Birthday,Sex,ClassId) values('01' , '赵雷' , '1990-01-01' , 'm',1) - -insert into StudentInfo (StudentCode,StudentName,Birthday,Sex,ClassId) values('02' , '钱电' , '1990-12-21' , 'm',1) - -insert into StudentInfo (StudentCode,StudentName,Birthday,Sex,ClassId) values('03' , '孙风' , '1990-12-20' , 'm',1) - -insert into StudentInfo (StudentCode,StudentName,Birthday,Sex,ClassId) values('04' , '李云' , '1990-12-06' , 'm',1) - -insert into StudentInfo (StudentCode,StudentName,Birthday,Sex,ClassId) values('05' , '周梅' , '1991-12-01' , 'f',1) - -insert into StudentInfo (StudentCode,StudentName,Birthday,Sex,ClassId) values('06' , '吴兰' , '1992-01-01' , 'f',1) - -insert into StudentInfo (StudentCode,StudentName,Birthday,Sex,ClassId) values('07' , '郑竹' , '1989-01-01' , 'f',1) - -insert into StudentInfo (StudentCode,StudentName,Birthday,Sex,ClassId) values('09' , '张三' , '2017-12-20' , 'f',1) - -insert into StudentInfo (StudentCode,StudentName,Birthday,Sex,ClassId) values('10' , '李四' , '2017-12-25' , 'f',1) - -insert into StudentInfo (StudentCode,StudentName,Birthday,Sex,ClassId) values('11' , '李四' , '2012-06-06' , 'f',1) - -insert into StudentInfo (StudentCode,StudentName,Birthday,Sex,ClassId) values('12' , '赵六' , '2013-06-13' , 'f',1) - -insert into StudentInfo (StudentCode,StudentName,Birthday,Sex,ClassId) values('13' , '孙七' , '2014-06-01' , 'f',1) - - - - - -GO - - - - - -CREATE TABLE Teachers - -( - - Id int PRIMARY key not null IDENTITY, - - TeacherName nvarchar(80) - -) - - - -go - --- select * from Teachers - - - -insert into Teachers (TeacherName) values('张三') - -insert into Teachers (TeacherName) values('李四') - -insert into Teachers (TeacherName) values('王五') - - - -GO - - - -create table CourseInfo - -( - - Id int PRIMARY key not null IDENTITY, - - CourseName NVARCHAR(80) not null, - - TeacherId int not null - -) - - - -go - --- select * from CourseInfo - - - -insert into CourseInfo (CourseName,TeacherId) values( '语文' , 2) - -insert into CourseInfo (CourseName,TeacherId) values( '数学' , 1) - -insert into CourseInfo (CourseName,TeacherId) values( '英语' , 3) - - - -GO - - - -create table StudentCourseScore - -( - - Id int PRIMARY key not null IDENTITY, - - StudentId int not null, - - CourseId int not null, - - Score int not null - -) - -go - --- select * from StudentCourseScore - - - -insert into StudentCourseScore (StudentId,CourseId,Score) values((select Id from StudentInfo where StudentCode='01') , 1 , 80) - -insert into StudentCourseScore (StudentId,CourseId,Score) values((select Id from StudentInfo where StudentCode='01') , 2 , 90) - -insert into StudentCourseScore (StudentId,CourseId,Score) values((select Id from StudentInfo where StudentCode='01') , 3 , 99) - -insert into StudentCourseScore (StudentId,CourseId,Score) values((select Id from StudentInfo where StudentCode='02') , 1 , 70) - -insert into StudentCourseScore (StudentId,CourseId,Score) values((select Id from StudentInfo where StudentCode='02') , 2 , 60) - -insert into StudentCourseScore (StudentId,CourseId,Score) values((select Id from StudentInfo where StudentCode='02') , 3 , 80) - -insert into StudentCourseScore (StudentId,CourseId,Score) values((select Id from StudentInfo where StudentCode='03') , 1 , 80) - -insert into StudentCourseScore (StudentId,CourseId,Score) values((select Id from StudentInfo where StudentCode='03') , 2 , 80) - -insert into StudentCourseScore (StudentId,CourseId,Score) values((select Id from StudentInfo where StudentCode='03') , 3 , 80) - -insert into StudentCourseScore (StudentId,CourseId,Score) values((select Id from StudentInfo where StudentCode='04') , 1 , 50) - -insert into StudentCourseScore (StudentId,CourseId,Score) values((select Id from StudentInfo where StudentCode='04') , 2 , 30) - -insert into StudentCourseScore (StudentId,CourseId,Score) values((select Id from StudentInfo where StudentCode='04') , 3 , 20) - -insert into StudentCourseScore (StudentId,CourseId,Score) values((select Id from StudentInfo where StudentCode='05') , 1 , 76) - -insert into StudentCourseScore (StudentId,CourseId,Score) values((select Id from StudentInfo where StudentCode='05') , 2 , 87) - -insert into StudentCourseScore (StudentId,CourseId,Score) values((select Id from StudentInfo where StudentCode='06') , 1 , 31) - -insert into StudentCourseScore (StudentId,CourseId,Score) values((select Id from StudentInfo where StudentCode='06') , 3 , 34) - -insert into StudentCourseScore (StudentId,CourseId,Score) values((select Id from StudentInfo where StudentCode='07') , 2 , 89) - -insert into StudentCourseScore (StudentId,CourseId,Score) values((select Id from StudentInfo where StudentCode='07') , 3 , 98) - - - -go \ No newline at end of file diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\277\201\346\231\266\350\276\211/\344\275\234\344\270\232\344\272\214.txt" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\277\201\346\231\266\350\276\211/\344\275\234\344\270\232\344\272\214.txt" deleted file mode 100644 index bb1c878..0000000 --- "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\347\277\201\346\231\266\350\276\211/\344\275\234\344\270\232\344\272\214.txt" +++ /dev/null @@ -1,47 +0,0 @@ -首先创建网吧计费系统的数据库,表结构和数据如2.bmp所示,表的说明如下: - -表一为上网卡信息表(tbl_card) -id: 卡号,主键 -passWord:密码 -balance:卡上的余额 -userName:该上网卡所属的用户名 - -表2为网吧机器说明表(tbl_computer) -id:机器编号,主键 -onUse:该机器是否正在使用,0为未使用,1为正在使用 -note:该机器的说明 - - -表3为上网记录表(tbl_record): -id:记录编号,主键 -cardId:本次上网的卡号,外键 -ComputerId:本次上网记录所使用的机器号,外键 -beginTime:本次上网记录的开始时间 -endTime:本次上网记录的结束时间 -fee:本次上网的费用 - - -请完成以下题目: -1. 查询出用户名为'张军'的上网卡的上网记录,要求显示卡号,用户名,机器编号、开始时间、结束时间,和消费金额,并按消费金额降序排列 - -2. 查询出每台机器上的上网次数和消费的总金额 - -3. 查询出所有已经使用过的上网卡的消费总金额 - -4. 查询出从未消费过的上网卡的卡号和用户名 - -5. 将密码与用户名一样的上网卡信息查询出来 - -6. 查询出使用次数最多的机器号和使用次数 - -7. 查询出卡号是以'ABC'结尾的卡号,用户名,上网的机器号和消费金额 - -8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 - -9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 - -10. 查询除消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 - - - - diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\347\277\201\346\231\266\350\276\211/SQLQuery2.sql" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\347\277\201\346\231\266\350\276\211/SQLQuery2.sql" index f3a85cc..a52095a 100644 --- "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\347\277\201\346\231\266\350\276\211/SQLQuery2.sql" +++ "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\347\277\201\346\231\266\350\276\211/SQLQuery2.sql" @@ -88,12 +88,18 @@ select top 1 CardID,count(*)使 select c.id,userName,ComputerId,Fee from tbl_card c inner join tbl_record r on c.ID=r.CardID where c.ID like '%ABC' --8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select c.ID 卡号,userName 用户名,o.ID 机器号,BeginTime 开始时间,EndTime 结束时间,Fee 消费金额 from tbl_record r inner join tbl_card c on r.CardID=c.ID +inner join tbl_computer o on r.ComputerId=o.ID where datename(dw,BeginTime)='星期日' or datename(dw,BeginTime)='7' - +select * from tbl_card +select * from tbl_computer +select * from tbl_record --9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 - + select c.ID 卡号,userName 用户名,o.ID 机器号,BeginTime 开始时间,EndTime 结束时间,Fee 消费金额 from tbl_record r inner join tbl_card c on r.CardID=c.ID +inner join tbl_computer o on r.ComputerId=o.ID where datediff(HH,BeginTime,EndTime)>12 ---10. 查询除消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 -select * from tbl_card c inner join tbl_record r on c.ID=r.CardID order by Fee - +--10. 查询出 消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select top 3 c.ID 卡号,userName 用户名,ComputerId 机器号,BeginTime 开始时间,EndTime 结束时间 from tbl_card c inner join tbl_record r on c.ID=r.CardID order by Fee desc +--10. 查询除 消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select * from tbl_record where id not in (select top 3 id from tbl_record order by fee desc) -- Gitee From 483a9b54a759bfee6dcdefadfa4988375c167532 Mon Sep 17 00:00:00 2001 From: laozifule <321942204@qq.com> Date: Wed, 31 Mar 2021 21:15:56 +0800 Subject: [PATCH 098/144] sss --- .../SQLQuery2.sql" | 105 ++++++++++++++++++ 1 file changed, 105 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\347\216\213\345\206\240\346\235\260/SQLQuery2.sql" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\347\216\213\345\206\240\346\235\260/SQLQuery2.sql" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\347\216\213\345\206\240\346\235\260/SQLQuery2.sql" new file mode 100644 index 0000000..a52095a --- /dev/null +++ "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\347\216\213\345\206\240\346\235\260/SQLQuery2.sql" @@ -0,0 +1,105 @@ +use master +go + +create database bmp +go + +use bmp +go + +create table tbl_card +( + ID nvarchar(30) primary key , + passWord nvarchar(10) not null, + balance int , + userName nvarchar(5) not null +) + +create table tbl_computer +( + ID nvarchar(30) primary key , + OnUse nvarchar(2) check(OnUse=0 or OnUse=1), + Note int +) + +create table tbl_record +( + ID char(5) primary key , + CardID nvarchar(30) references tbl_card(ID), + ComputerId nvarchar(30) references tbl_computer(ID), + BeginTime datetime , + EndTime datetime, + Fee int +) + +insert into tbl_card values +('0023_ABC','555',98,'张军'), +('0025_bbd','abe',300,'朱俊'), +('0036_CCD','何柳',100,'何柳'), +('0045_YGR','0045_YGR',58,'证验'), +('0078_RJV','55885fg',600,'校庆'), +('0089_EDE','zhang',134,'张俊') + +insert into tbl_computer values +('02',0,25555), +('03',1,55555), +('04',0,66666), +('05',1,88888), +('06',0,688878), +('B01',0,558558) + +insert into tbl_record values +('23','0078_RJV','B01','2007-07-15 19:00:00','2007-7-15 21:00:00',20), +('34','0025_bbd','02','2006-12-25 18:00:00','2006-12-25 22:00:00',23), +('45','0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), +('46','0023_ABC','03','2006-12-22 15:26:00','2006-12-22 22:55:00',6), +('47','0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), +('48','0023_ABC','03','2007-01-06 15:26:00','2007-01-06 22:55:00',6), +('55','0023_ABC','03','2006-07-21 15:26:00','2006-07-21 22:55:00',50), +('64','0045_YGR','04','2006-12-24 18:00:00','2006-12-24 22:00:00',3), +('65','0025_bbd','02','2006-12-28 18:00:00','2006-12-28 22:00:00',23), +('98','0025_bbd','02','2006-12-26 18:00:00','2006-12-26 22:00:00',23) + + +select * from tbl_card +select * from tbl_computer +select * from tbl_record + +--请完成以下题目: +--1. 查询出用户名为'张军'的上网卡的上网记录,要求显示卡号,用户名,机器编号、开始时间、结束时间,和消费金额,并按消费金额降序排列 +select c.ID,userName,ComputerId,BeginTime,EndTime,Fee from tbl_card c inner join tbl_record r on c.ID=r.CardID where userName='张军' order by Fee + +--2. 查询出每台机器上的上网次数和消费的总金额 +select CardID,count(*) 上网次数,sum(Fee) 消费总金额 from tbl_record group by CardID + +--3. 查询出所有已经使用过的上网卡的消费总金额 +select sum(fee) from tbl_record + +--4. 查询出从未消费过的上网卡的卡号和用户名 +select c.ID,userName from tbl_card c left join tbl_record r on c.ID=r.CardID where Fee is null + +--5. 将密码与用户名一样的上网卡信息查询出来 +select * from tbl_card c1 join tbl_card c2 on c1.passWord=c2.userName + +--6. 查询出使用次数最多的机器号和使用次数 +select top 1 CardID,count(*)使用次数 from tbl_record group by CardID order by count(*) desc + +--7. 查询出卡号是以'ABC'结尾的 卡号,用户名,上网的机器号和消费金额 +select c.id,userName,ComputerId,Fee from tbl_card c inner join tbl_record r on c.ID=r.CardID where c.ID like '%ABC' + +--8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select c.ID 卡号,userName 用户名,o.ID 机器号,BeginTime 开始时间,EndTime 结束时间,Fee 消费金额 from tbl_record r inner join tbl_card c on r.CardID=c.ID +inner join tbl_computer o on r.ComputerId=o.ID where datename(dw,BeginTime)='星期日' or datename(dw,BeginTime)='7' + +select * from tbl_card +select * from tbl_computer +select * from tbl_record +--9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 + select c.ID 卡号,userName 用户名,o.ID 机器号,BeginTime 开始时间,EndTime 结束时间,Fee 消费金额 from tbl_record r inner join tbl_card c on r.CardID=c.ID +inner join tbl_computer o on r.ComputerId=o.ID where datediff(HH,BeginTime,EndTime)>12 + +--10. 查询出 消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select top 3 c.ID 卡号,userName 用户名,ComputerId 机器号,BeginTime 开始时间,EndTime 结束时间 from tbl_card c inner join tbl_record r on c.ID=r.CardID order by Fee desc + +--10. 查询除 消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select * from tbl_record where id not in (select top 3 id from tbl_record order by fee desc) -- Gitee From 872c41c5ee9d2701d899963c6b94693e7f82c024 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BB=84=E5=BC=BA?= <1871354236@qq.com> Date: Wed, 31 Mar 2021 21:20:03 +0800 Subject: [PATCH 099/144] =?UTF-8?q?=E9=BB=84=E5=BC=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\351\273\204\345\274\272/SQLQuery1.sql" | 109 ++++++++++++++++++ 1 file changed, 109 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\351\273\204\345\274\272/SQLQuery1.sql" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\351\273\204\345\274\272/SQLQuery1.sql" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\351\273\204\345\274\272/SQLQuery1.sql" new file mode 100644 index 0000000..6e51500 --- /dev/null +++ "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\351\273\204\345\274\272/SQLQuery1.sql" @@ -0,0 +1,109 @@ +use master +go +create database TBL +on +( + name='TBL', + filename='D:\SQL\TBL.mdf', + size=5MB, + maxsize=20MB, + filegrowth=10% +) +log on +( + name='TBL_log', + filename='D:\SQL\TBL_log.ldf', + size=5MB, + maxsize=20MB, + filegrowth=10% +) +go + +use TBL +go +create table TBL_Card +( + CardID char(30) primary key not null, + PassWord varchar(50) not null, + Balance money , + UserName nvarchar(20) +) + +create table TBL_Computer +( + CID char(30) primary key , + OnUse char(1) check(OnUse in(1,0)), + note text +) + +create table TBL_Record +( + RID int primary key , + CardID char(30) references TBL_Card(CardID), + CID char(30) references TBL_Computer(CID), + BeginTime datetime, + Endtime datetime, + fee money +) +go + +insert into TBL_Card values +('0023_ABC','555',98,'张军'), +('0025_bbd','abe',300,'朱俊'), +('0036_CCD','何柳',100,'何柳'), +('0045_YGR','00445_YGR',58,'证验'), +('0078_RJV','55885fg',600,'校庆'), +('0089_EDE','zhang',134,'张俊') + +insert into TBL_Computer values +('02','0','25555'), +('03','1','55555'), +('04','0','66666'), +('05','1','88888'), +('06','0','688878'), +('B01','0','558558') + +insert into TBL_Record values +(23,'0078_RJV','B01','2007-07-15 19:00:00','2007-07-15 21:00:00',20), +(34,'0025_bbd','02','2006-12-25 18:00:00','2006-12-25 22:00:00',23), +(45,'0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:25:00',50), +(46,'0023_ABC','03','2006-12-23 15:26:00','2006-12-22 22:55:00',6), +(47,'0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), +(48,'0023_ABC','03','2007-01-06 15:26:00','2007-01-06 22:55:00',6), +(55,'0023_ABC','03','2006-07-21 15:26:00','2006-07-21 22:55:00',20), +(64,'0045_YGR','04','2006-12-24 18:00:00','2006-12-24 22:00:00',3), +(65,'0025_bbd','02','2006-12-28 18:00:00','2006-12-28 22:00:00',23), +(98,'0025_bbd','02','2006-12-26 18:00:00','2006-12-26 22:00:00',23) +go + +select * from TBL_Card +select * from TBL_Computer +select * from TBL_Record +--1. 查询出用户名为'张军'的上网卡的上网记录,要求显示卡号,用户名,机器编号、开始时间、结束时间,和消费金额,并按消费金额降序排列 +select C.CardID 卡号 , UserName 用户名 , CID 机器编号 , BeginTime 开始时间 , Endtime 结束时间 , fee 消费金额 from TBL_Record R inner join TBL_Card C on R.CardID=C.CardID where UserName='张军' order by fee DESC +--2. 查询出每台机器上的上网次数和消费的总金额 +select CID 机器编号 , COUNT(*) 上网次数 , SUM(fee) 总金额 from TBL_Record R group by CID +--3. 查询出所有已经使用过的上网卡的消费总金额 +select CardID 卡号 , SUM(fee) 总金额 from TBL_Record group by CardID +--4. 查询出从未消费过的上网卡的卡号和用户名 +select C.CardID 卡号 , UserName 用户名 , RID from TBL_Record R right join TBL_Card C on R.CardID=C.CardID group by C.CardID,UserName,RID having RID is null or RID='' +--5. 将密码与用户名一样的上网卡信息查询出来 +select A.* from TBL_Card A,TBL_Card B where A.PassWord=B.UserName +--6. 查询出使用次数最多的机器号和使用次数 +--select top 1 COUNT(*) from TBL_Record group by CID order by COUNT(*) DESC +select CID 机器号 , COUNT(*) 使用次数 from TBL_Record group by CID having COUNT(*)=(select top 1 COUNT(*) from TBL_Record group by CID order by COUNT(*) DESC) +--7. 查询出卡号是以'ABC'结尾的卡号,用户名,上网的机器号和消费金额 +select C.CardID 卡号 , UserName 用户名 , CID 机器编号 , fee 消费金额 from TBL_Record R inner join TBL_Card C on R.CardID=C.CardID where C.CardID like '%ABC' +--8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select C.CardID 卡号 , UserName 用户名 , CID 机器编号 , BeginTime 开始时间 , Endtime 结束时间 , fee 消费金额 from TBL_Record R inner join TBL_Card C on R.CardID=C.CardID where datename(weekday,BeginTime)='星期六' or datepart(weekday,BeginTime)=1 +--9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select C.CardID 卡号 , UserName 用户名 , CID 机器编号 , BeginTime 开始时间 , Endtime 结束时间 , fee 消费金额 from TBL_Record R inner join TBL_Card C on R.CardID=C.CardID where DATEDIFF(HH,BeginTime,Endtime)>12 +--10. 查询出消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select C.CardID 卡号 , UserName 用户名 , CID 机器编号 , BeginTime 开始时间 , Endtime 结束时间 , fee 消费金额 from TBL_Record R +inner join TBL_Card C on R.CardID=C.CardID +where RID not in (select top 3 RID from TBL_Record order by fee DESC) +group by C.CardID,UserName,CID,BeginTime,Endtime,fee +--11. 查询除消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select top 3 RID from TBL_Record order by fee DESC +select C.CardID 卡号 , UserName 用户名 , CID 机器编号 , BeginTime 开始时间 , Endtime 结束时间 , fee 消费金额 from TBL_Record R inner join TBL_Card C on R.CardID=C.CardID where RID in (select top 3 RID from TBL_Record order by fee DESC) +group by C.CardID , UserName , CID , BeginTime , Endtime , fee \ No newline at end of file -- Gitee From 2ebb14076c24770c4cb1fa090f1ef3ceec7c86fe Mon Sep 17 00:00:00 2001 From: xiaohaisheng <2674550529@qq.com> Date: Wed, 31 Mar 2021 21:21:45 +0800 Subject: [PATCH 100/144] first commit --- .../SQLQuery2.sql" | 125 ++++++++++++++++++ 1 file changed, 125 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\202\226\346\265\267\346\231\237/SQLQuery2.sql" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\202\226\346\265\267\346\231\237/SQLQuery2.sql" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\202\226\346\265\267\346\231\237/SQLQuery2.sql" new file mode 100644 index 0000000..e6a0f8b --- /dev/null +++ "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\202\226\346\265\267\346\231\237/SQLQuery2.sql" @@ -0,0 +1,125 @@ +use master +go +create database internetbar +on +( + name = 'internetbar', + filename='D:\sql\internetbar.mdf', + size = 5MB, + maxsize = 500MB, + filegrowth = 5MB +) +log on +( + name = 'internetbar_log', + filename='D:\sql\internetbar_log.ldf', + size = 5MB, + maxsize = 500MB, + filegrowth = 5MB +) +go +use internetbar +go + +create table tbl_card +( + cardID varchar(20) primary key not null, + passWord nvarchar(20) not null, + balance nvarchar(20) not null, + userName nvarchar(20) not null, +) +--卡号 +--密码 +--卡上余额 +--用户名 + +create table tbl_computer +( + computerID varchar(20) primary key not null, + onUse char(1) default(0) check(onUse=1 or onUse=0) not null, + note nvarchar(50) not null +) +--机器编号 +--机器使用情况 +--说明 + +create table tbl_record +( + recordID varchar(20) primary key not null, + cardID varchar(20) references tbl_card(cardID), + computerID varchar(20) references tbl_computer(computerID), + beginTime datetime, + endTime datetime, + fee int +) +--记录编号 +--卡号 +--机器编号 +--开始时间 +--结束时间 +--费用 + +insert into tbl_card values +('0023_ABC','555',98,'张军'), +('0025_bbd','abe',300,'朱俊'), +('0036_CCD','何柳',100,'何柳'), +('0045_YGR','0045_YGR',58,'证验'), +('0078_RJV','5585fg',600,'校庆'), +('0089_EDE','zhang',134,'张俊') + +insert into tbl_computer values +('02',0,25555), +('03',1,55555), +('04',0,66666), +('05',1,88888), +('06',0,688878), +('B01',0,558558) + +insert into tbl_record values +('23','0078_RJV','B01','2007-07-15 19:00:00','2007-07-15 21:00:00',20), +('34','0025_bbd','02','2006-12-25 16:00:00','2006-12-25 22:00:00',23), +('45','0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), +('46','0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',6), +('47','0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), +('48','0023_ABC','03','2007-01-06 15:26:00','2007-01-06 22:55:00',6), +('55','0023_ABC','03','2006-07-21 15:26:00','2006-07-21 22:55:00',50), +('64','0045_YGR','04','2006-12-24 18:00:00','2006-12-24 22:00:00',3), +('65','0025_bbd','02','2006-12-28 18:00:00','2006-12-28 22:00:00',23), +('98','0025_bbd','02','2006-12-26 18:00:00','2006-12-26 22:00:00',23) + +select * from tbl_card +select * from tbl_computer +select * from tbl_record + +--请完成以下题目: +--1. 查询出用户名为'张军'的上网卡的上网记录,要求显示卡号,用户名,机器编号、开始时间、结束时间,和消费金额,并按消费金额降序排列 +select C.cardID 卡号, userName 用户名, computerID 机器编号, beginTime 开始时间, endTime 结束时间,fee 消费金额 from +tbl_record R inner join tbl_card C on R.cardID=C.cardID +where userName='张军' order by fee desc +--2. 查询出每台机器上的上网次数和消费的总金额 +select computerID 机器编号, count(*) 机器上网次数, sum(fee) 总金额 from tbl_record group by computerID +--3. 查询出所有已经使用过的 上网卡的 消费总金额 +select sum(fee) 消费总金额 from tbl_record +--4. 查询出从未消费过的上网卡的卡号和用户名 +select C.cardID 卡号, userName 用户名 from +tbl_card C left join tbl_record R on C.cardID=R.cardID where fee is null or fee=' ' +--5. 将密码与用户名一样的上网卡信息查询出来 +select distinct A. * from +tbl_card A , tbl_card B where A.passWord=B.userName +--6. 查询出使用次数最多的机器号和使用次数 +select top 1 computerID 机器编号, count(*) 使用次数 from +tbl_record group by computerID order by count(*) desc +--7. 查询出卡号是以'ABC'结尾的卡号,用户名,上网的机器号和消费金额 +select R.cardID 卡号, userName 用户名, computerID 机器编号, fee 消费金额 from +tbl_record R inner join tbl_card C on R.cardID=C.cardID where R.cardID like '%ABC' +--8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select R.cardID 卡号, userName 用户名, computerID 机器编号,beginTime 开始时间,endTime 结束时间, fee 消费金额 from +tbl_record R inner join tbl_card C on R.cardID=C.cardID +where datepart(DW,beginTime)=7 or DATENAME(DW,beginTime)='星期日' +--9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select R.cardID 卡号, userName 用户名, computerID 机器编号,beginTime 开始时间,endTime 结束时间, fee 消费金额 from +tbl_record R inner join tbl_card C on R.cardID=C.cardID +where (endtime-beginTime)>12 +--10. 查询出消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select top 3 R.cardID 卡号, userName 用户名, computerID 机器编号,beginTime 开始时间,endTime 结束时间, fee 消费金额 from +tbl_record R inner join tbl_card C on R.cardID=C.cardID order by fee desc \ No newline at end of file -- Gitee From 01c8299f1aafdb39231fc8d45fe8dc710b3dcdc4 Mon Sep 17 00:00:00 2001 From: call-y5 Date: Wed, 31 Mar 2021 21:22:08 +0800 Subject: [PATCH 101/144] ss --- .../SQLQuery1.sql" | 161 ++++++++++++++++++ 1 file changed, 161 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\345\262\263\345\220\257\345\215\216/SQLQuery1.sql" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\345\262\263\345\220\257\345\215\216/SQLQuery1.sql" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\345\262\263\345\220\257\345\215\216/SQLQuery1.sql" new file mode 100644 index 0000000..a8709ae --- /dev/null +++ "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\345\262\263\345\220\257\345\215\216/SQLQuery1.sql" @@ -0,0 +1,161 @@ +use master +go + +create database TD +go +use TD +go + +create table Tbl_card +( + ID nchar(8) primary key, + PassWord varchar(20) unique not null, + Balance int, + UserName nvarchar(5) +) + +insert into + Tbl_card +values + ('0023_ABC','555',98,'张军'), + ('0025_bbd','abe',300,'朱俊'), + ('0036_CCD','何柳',100,'何柳'), + ('0045_YGR','0045_YGR',58,'证验'), + ('0078_RJV','55885fg',600,'校庆'), + ('0089_EDF','zhang',134,'张峻') + +create table Tbl_computer +( + ID varchar(5) primary key, + OnUse char(1) default('0') check(OnUse in(0, 1)), + note varchar(10) +) + +insert into + Tbl_computer +values + ('02',0,'25555'), + ('03',1,'55555'), + ('04',0,'66666'), + ('05',1,'88888'), + ('06',0,'688878'), + ('B01',0,'558558') + +create table Tbl_record +( + ID int primary key, + CardID nchar(8) foreign key references Tbl_card(ID), + ComputerID varchar(5) foreign key references Tbl_computer(ID), + BeginTime datetime, + EndTime datetime, + Fee int +) + +insert into + Tbl_record +values + (23,'0078_RJV','B01','2007-07-25 19:00:00','2007-07-25 21:00:00',20), + (34,'0025_bbd','02','2006-12-25 18:00:00','2006-12-25 22:00:00',23), + (45,'0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), + (46,'0023_ABC','03','2006-12-22 15:26:00','2006-12-23 22:55:00',6), + (47,'0023_ABC','03','2006-12-24 15:26:00','2006-12-24 22:55:00',50), + (48,'0023_ABC','03','2007-01-06 15:26:00','2007-01-06 22:55:00',6), + (55,'0023_ABC','03','2006-07-21 15:26:00','2006-07-21 22:55:00',50), + (64,'0045_YGR','04','2006-12-24 18:00:00','2006-12-24 22:00:00',35), + (65,'0025_bbd','02','2006-12-28 18:00:00','2006-12-28 22:00:00',23), + (98,'0025_bbd','02','2006-12-26 18:00:00','2006-12-26 22:00:00',23) + +-- 1. 查询出用户名为'张军'的上网卡的上网记录,要求显示卡号,用户名,机器编号、开始时间、结束时间,和消费金额,并按消费金额降序排列 +select + Tc.UserName,Tr.* +from + Tbl_record Tr +join + Tbl_card Tc +on + UserName = '张军' +order by + Fee +desc +-- 2. 查询出每台机器上的上网次数和消费的总金额 +select + ComputerID 机器ID,count(ComputerID) 上网次数,sum(Fee) 总金额 +from + Tbl_record +group by + ComputerID + +-- 3. 查询出所有已经使用过的上网卡的消费总金额 +select + Tr.ComputerID 上网卡ID,sum(Fee) 总金额 +from + Tbl_record Tr +join + Tbl_Computer Tc +on + Tr.ComputerID = Tc.ID and Tc.OnUse = 1 +group by + Tr.ComputerID + +-- 4. 查询出从未消费过的上网卡的卡号和用户名 +select + distinct Tc.UserName, Tc.ID +from + Tbl_record Tr +join + Tbl_card Tc +on + Tc.ID not in + ( + select distinct CardID from Tbl_record + ) + +-- 5. 将密码与用户名一样的上网卡信息查询出来 +select + * +from + Tbl_card +where + UserName = PassWord + +-- 6. 查询出使用次数最多的机器号和使用次数 + +select + top 1 Max(ComputerID) 机器号,count(ComputerID) 使用次数 +from + Tbl_record + +-- 7. 查询出卡号是以'ABC'结尾的卡号,用户名,上网的机器号和消费金额 +select + * +from + Tbl_record +where + CardID like ('%ABC') + +-- 8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select + * +from + Tbl_record +where + datepart(weekday,BeginTime) = 7 or datepart(weekday,BeginTime) = 1 + +-- 9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select + * +from + Tbl_record +where + Datediff(hh,BeginTime,EndTime) > 12 + +-- 10. 查询除消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select + top 3 * +from + Tbl_record +order by + Fee +desc + + -- Gitee From 86f7b69db58bb1aff584a8225a351708ced690d7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9E=97=E6=B5=B7=E5=B3=B0?= <8753959+lin-haifen@user.noreply.gitee.com> Date: Wed, 31 Mar 2021 21:31:19 +0800 Subject: [PATCH 102/144] =?UTF-8?q?=E5=88=A0=E9=99=A4=E6=96=87=E4=BB=B6=20?= =?UTF-8?q?Desktop.7z?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Desktop.7z | Bin 11094 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 Desktop.7z diff --git a/Desktop.7z b/Desktop.7z deleted file mode 100644 index 729510efdd904f5d027aa8797f22f3aecb6ebba4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11094 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 -- Gitee From f44a324151436f25fdde50e2cd30acaa8a6b9a86 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9E=97=E6=B5=B7=E5=B3=B0?= <8753959+lin-haifen@user.noreply.gitee.com> Date: Wed, 31 Mar 2021 21:32:18 +0800 Subject: [PATCH 103/144] =?UTF-8?q?=E6=9E=97=E6=B5=B7=E5=B3=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../3.31\344\275\234\344\270\232.sql" | 170 ++++++++++++++++++ 1 file changed, 170 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\236\227\346\265\267\345\263\260/3.31\344\275\234\344\270\232.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\236\227\346\265\267\345\263\260/3.31\344\275\234\344\270\232.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\236\227\346\265\267\345\263\260/3.31\344\275\234\344\270\232.sql" new file mode 100644 index 0000000..3f66cde --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\346\236\227\346\265\267\345\263\260/3.31\344\275\234\344\270\232.sql" @@ -0,0 +1,170 @@ +use master +go +create database wb +on +( + name='wb', + filename='D:\sql\wb.mdf', + size=10MB, + maxsize=50MB, + filegrowth=10% +) +log on +( + name='wb_log', + filename='D:\sql\wb_log.ldf', + size=10MB, + maxsize=50MB, + filegrowth=10% +) +go +use wb +go +create table tbl_card +( + cardid varchar(10) primary key, + passWord nvarchar(20), + balance money , + userName nvarchar(2) +) +create table tbl_computer +( + computerid varchar(4) primary key, + onUse int check(onUse=0 or onUse=1), + note text +) +create table tbl_record +( + id int primary key, + cardId varchar(10) references tbl_card(cardid), + ComputerId varchar(4) references tbl_computer(computerid), + beginTime time, + endTime time, + fee money +) +go +insert into tbl_card(cardid,passWord,balance,userName) +select '0023_ABC','555','98','张军'union +select '0025_bbd','abe','300','朱俊'union +select '0036_CCD','何柳','100','何柳'union +select '0045_YGR','0045_YGR','58','证验'union +select '0078_RJV','55885fg','600','校庆'union +select '0089_EDE','zhang','134','张峻' + +insert into tbl_computer(computerid,onUse,note) +select'02','0','25555'union +select'03','1','55555'union +select'04','0','66666'union +select'05','1','88888'union +select'06','0','688878'union +select'B01','0','558558' + +insert into tbl_record(id,cardId,ComputerId,beginTime,endTime,fee) +select'23','0078_RJV','B01','2007-07-15 19:00:00','2007-07-15 21:00:00','20'union +select'34','0025_bbd','02','2006-12-25 18:00:00','2006-12-25 22:00:00','23'union +select'45','0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00','50'union +select'46','0023_ABC','03','2006-12-22 15:26:00','2006-12-22 22:55:00','6'union +select'47','0023_ABC','03','2006-12-23 15:26:00','2006-12-23 15:55:00','50'union +select'48','0023_ABC','03','2007-01-06 15:26:00','2007-01-06 22:55:00','6'union +select'55','0023_ABC','03','2006-07-21 15:26:00','2006-07-21 22:55:00','50'union +select'64','0045_YGR','04','2006-12-24 18:00:00','2006-12-24 22:00:00','36'union +select'65','0025_bbd','02','2006-12-28 18:00:00','2006-12-28 22:00:00','23'union +select'98','0025_bbd','02','2006-12-26 18:00:00','2006-12-26 22:00:00','23' + +select * from tbl_record +--1. 查询出用户名为'张军'的上网卡的上网记录,要求显示卡号,用户名,机器编号、开始时间、结束时间,和消费金额,并按消费金额降序排列 +select Tc.userName ,Tr.* from tbl_record Tr inner join tbl_card Tc on userName='张军' order by Tr.fee desc +--2. 查询出每台机器上的上网次数和消费的总金额 +select tbl_computer.computerid,count(id)上网次数,sum(fee)消费总金额 from tbl_computer inner join tbl_record on tbl_computer.computerid=tbl_record.ComputerId group by tbl_computer.computerid +--3. 查询出所有已经使用过的上网卡的消费总金额 +select tbl_card.cardid,sum(fee)消费总金额 from tbl_card inner join tbl_record on tbl_card.cardid=tbl_record.cardId group by tbl_card.cardid +--4. 查询出从未消费过的上网卡的卡号和用户名 +select + tc.id, tc.userName +from + tbl_card tc +left join + tbl_record tr +on + tr.cardId = tc.id +where + tr.id is null + +--5. 将密码与用户名一样的上网卡信息查询出来 +select + * +from + tbl_card t1 +join + tbl_card t2 +on + (t1.id = t2.id) and (t1.[passWord] = t2.userName) + +--6. 查询出使用次数最多的机器号和使用次数 +select + ComputerId, count(*) '使用次数' +from + tbl_record +group by + ComputerId +having + count(*) = (select max(t.使用次数) from (select ComputerId, count(*) '使用次数' from tbl_record group by ComputerId) t) + +--7. 查询出卡号是以'ABC'结尾的卡号,用户名,上网的机器号和消费金额 +select + tc.id, tc.userName, tr.ComputerId, tr.fee +from + tbl_record tr +join + tbl_card tc +on + tr.cardId = tc.id +where + tr.cardId like '%ABC' + + +--8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select + tc.id, tc.userName, tr.ComputerId, tr.beginTime, tr.endTime, tr.fee +from + tbl_record tr +join + tbl_card tc +on + tr.cardId = tc.id +where + DATENAME(dw, tr.beginTime) in ('星期六','星期日') +--9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select + tc.id, tc.userName, tr.ComputerId, tr.beginTime, tr.endTime, tr.fee +from + tbl_record tr +join + tbl_card tc +on + tr.cardId = tc.id +where + DATEDIFF(HH, tr.beginTime, tr.endTime) > 12 + +--10. 查询除消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 + +select + tc.id, tc.userName, tr.ComputerId, tr.beginTime, tr.endTime, tr.fee +from + tbl_record tr +join + tbl_card tc +on + tr.cardId = tc.id +where + tr.fee in ( + select + distinct top 3 fee + from + tbl_record + order by + fee desc + ) +order by + tr.fee desc + -- Gitee From 8a53f7bf6402a4689728c948f2055a72b2e37798 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E5=98=A4=E6=8D=89=E5=B0=8F=E7=8C=BF?= <2030676100@qq.com> Date: Wed, 31 Mar 2021 21:36:55 +0800 Subject: [PATCH 104/144] =?UTF-8?q?=E6=96=B0=E5=BB=BA=20=E8=A2=81=E5=9D=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\350\242\201\345\235\232/.keep" | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\242\201\345\235\232/.keep" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\242\201\345\235\232/.keep" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\242\201\345\235\232/.keep" new file mode 100644 index 0000000..e69de29 -- Gitee From 5edbfbb59f428bc3749abd41339155153cb07ff1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E5=98=A4=E6=8D=89=E5=B0=8F=E7=8C=BF?= <2030676100@qq.com> Date: Wed, 31 Mar 2021 21:37:45 +0800 Subject: [PATCH 105/144] =?UTF-8?q?=E7=AC=AC=E5=8D=81=E4=BA=8C=E6=AC=A1?= =?UTF-8?q?=E4=BD=9C=E4=B8=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\350\242\201\345\235\232/SQLQueryq2.sql" | 96 +++++++++++++++++++ 1 file changed, 96 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\242\201\345\235\232/SQLQueryq2.sql" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\242\201\345\235\232/SQLQueryq2.sql" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\242\201\345\235\232/SQLQueryq2.sql" new file mode 100644 index 0000000..7e58053 --- /dev/null +++ "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\242\201\345\235\232/SQLQueryq2.sql" @@ -0,0 +1,96 @@ +use master +go +create database wb +go +use wb +go +create table cardq --上网卡信息表 +( + ID char(8) primary key, --卡号 + PassWord char(12) not null, --密码 + Balance int not null,--卡上的余额 + UserName nchar(6) not null--该上网卡所属的用户名 +) +create table computer --机器说明表 +( + ID char(4) primary key, --机器编号 + OnUse char(1) check(OnUse='0' or OnUse='1') not null,--该机器是否正在使用 + Notr char(7) not null --该机器的说明 +) +create table record --上网记录表 +( + ID int primary key, --记录编号 + CardID char(8) references cardq(ID) not null, --本次上网的卡号 + ComputerID char(4) references computer(ID) not null, --本次上网记录所使用的机器号 + BeginTime datetime , --本次上网记录的开始时间 + EndTime datetime, --本次上网记录的结束时间 + Fee money --本次上网的费用 +) +insert into cardq values +('0023_ABC','555',98,'张军'),('0025_bbd','abc',300,'朱骏'),('0036_CCD','何柳',100,'何柳'), +('0045_YGR','0045_YGR',58,'验证'),('0078_RJV','55885fg',600,'校庆'),('0089_EDE','zhang',134,'张峻') +insert into computer values +('02','0','25555'),('03','1','55555'),('04','0','6666'), +('05','1','88888'),('06','0','688878'),('B01','0','558558') +insert into record values +(23,'0078_RJV','B01','2007-07-15 19:00:00','2007-07-15 21:00:00','20'), +(34,'0025_bbd','02','2006-12-25 18:00:00','2006-12-25 22:00:00','23'), +(45,'0023_ABC','03','2006-12-23 15:00:00','2006-12-23 22:55:00','50'), +(46,'0023_ABC','03','2006-12-22 15:00:00','2006-12-22 22:55:00','6'), +(47,'0023_ABC','03','2006-12-23 15:00:00','2006-12-23 22:55:00','50'), +(48,'0023_ABC','03','2007-01-06 15:00:00','2006-01-06 22:55:00','6'), +(55,'0023_ABC','03','2006-07-21 15:00:00','2006-07-21 22:55:00','50'), +(64,'0045_YGR','04','2006-12-24 18:00:00','2006-12-24 22:00:00','300'), +(65,'0025_bbd','02','2006-12-28 18:00:00','2006-12-28 22:00:00','23'), +(98,'0025_bbd','02','2006-12-26 18:00:00','2006-12-26 22:00:00','23') + +select*from cardq --上网卡信息表 +select*from computer --机器说明表 +select*from record --上网记录表 + +--1. 查询出用户名为'张军'的上网卡的上网记录,要求显示卡号,用户名,机器编号、开始时间、结束时间,和消费金额,并按消费金额降序排列 +select CardID 卡号,UserName 用户名,co.ID 机器编号,BeginTime 开始时间,EndTime 结束时间,Fee 消费金额 from record r +inner join cardq c on r.CardID=c.ID inner join computer co on co.ID=r.ComputerID where UserName='张军' order by Fee desc + +--2. 查询出每台机器上的上网次数和消费的总金额 +select c.ID 机器编号,count(*) 上网次数,sum(Fee )消费的总金额 from record r +left join computer c on r.ComputerID=c.ID +group by c.ID + +--3. 查询出所有已经使用过的上网卡的消费总金额 +select C.ID 网卡号,sum(Fee) 消费总金额 from cardq c +right join record r on c.ID=r.CardID +group by C.ID + +--4. 查询出从未消费过的上网卡的卡号和用户名 +select C.ID 网卡号,UserName 用户名 from cardq c +left join record r on c.ID=r.CardID +where Fee is null +--5. 将密码与用户名一样的上网卡信息查询出来 +select * from cardq C inner join cardq A on C.PassWord=A.UserName + +--6. 查询出使用次数最多的机器号和使用次数 +select top 1 c.ID 机器号,count(*) 使用次数 from record r +left join computer c on c.ID=r.ComputerID +group by c.ID order by count(*) desc + + +--7. 查询出卡号是以'ABC'结尾的卡号,用户名,上网的机器号和消费金额 +select ca.ID 卡号,UserName 用户名,ComputerID 机器号,Fee 消费金额 from cardq ca +left join record r on ca.ID=r.CardID +where ca.ID like '%ABC' + +--8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select C.ID 卡号 , UserName 用户名 , ComputerID 机器编号 , BeginTime 开始时间 , Endtime 结束时间 from record R +inner join cardq C on R.CardID=C.ID +where datename(weekday,BeginTime)='星期六' or datename(weekday,BeginTime)='星期日' + +--9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select C.ID 卡号 , UserName 用户名 , ComputerID 机器编号 , Begintime 开始时间 , Endtime 结束时间 , fee 消费金额 from record R +inner join cardq C on R.CardID=C.ID +where datediff(hh,EndTime,BeginTime)>12 + +--10. 查询消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select top 3 C.ID 卡号 , UserName 用户名 ,ComputerID 机器编号 , BeginTime 开始时间, EndTime 结束时间 , fee 消费金额 from record R +inner join cardq C on C.Id = R.CardID +order by fee desc \ No newline at end of file -- Gitee From 5711cd8951a565976225619cb2fab73a67cc3985 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E5=98=A4=E6=8D=89=E5=B0=8F=E7=8C=BF?= <2030676100@qq.com> Date: Wed, 31 Mar 2021 21:37:52 +0800 Subject: [PATCH 106/144] =?UTF-8?q?=E5=88=A0=E9=99=A4=E6=96=87=E4=BB=B6=20?= =?UTF-8?q?=E7=AC=AC=E5=8D=81=E4=BA=8C=E6=AC=A1=E8=AF=BE=E4=BD=9C=E4=B8=9A?= =?UTF-8?q?/=E8=A2=81=E5=9D=9A/.keep?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\350\242\201\345\235\232/.keep" | 0 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\242\201\345\235\232/.keep" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\242\201\345\235\232/.keep" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\242\201\345\235\232/.keep" deleted file mode 100644 index e69de29..0000000 -- Gitee From f4bf8a35bde4df0f98f399106da3cf5c180c5621 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=A8=E4=B8=96=E7=91=9E?= <2403666581@qq.com> Date: Wed, 31 Mar 2021 21:40:24 +0800 Subject: [PATCH 107/144] =?UTF-8?q?=E6=96=B0=E5=BB=BA=20=E6=9D=A8=E4=B8=96?= =?UTF-8?q?=E7=91=9E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\346\235\250\344\270\226\347\221\236/.keep" | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\235\250\344\270\226\347\221\236/.keep" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\235\250\344\270\226\347\221\236/.keep" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\235\250\344\270\226\347\221\236/.keep" new file mode 100644 index 0000000..e69de29 -- Gitee From 80c4a6bfd39869a562406082bffd2ab47c61fcc1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=A8=E4=B8=96=E7=91=9E?= <2403666581@qq.com> Date: Wed, 31 Mar 2021 21:41:05 +0800 Subject: [PATCH 108/144] dd --- ...4\346\254\241\344\275\234\344\270\232.sql" | 124 ++++++++++++++++++ 1 file changed, 124 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\235\250\344\270\226\347\221\236/\347\254\254\345\215\201\344\272\214\346\254\241\344\275\234\344\270\232.sql" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\235\250\344\270\226\347\221\236/\347\254\254\345\215\201\344\272\214\346\254\241\344\275\234\344\270\232.sql" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\235\250\344\270\226\347\221\236/\347\254\254\345\215\201\344\272\214\346\254\241\344\275\234\344\270\232.sql" new file mode 100644 index 0000000..fc7145d --- /dev/null +++ "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\235\250\344\270\226\347\221\236/\347\254\254\345\215\201\344\272\214\346\254\241\344\275\234\344\270\232.sql" @@ -0,0 +1,124 @@ +create database 第十一次作业 +on +( + name='第十一次作业', + size=5, + filename ='D:\test\第十一次作业.mdf', + maxsize=100, + filegrowth=5 +) +log on +( + name='第十一次作业_log', + size=5, + filename ='D:\test\第十一次作业_log.ldf', + maxsize=100, + filegrowth=5 +) +go +use 第十一次作业 +go + +create table tbl_card +( + id varchar(10) primary key, + passWord varchar(20), + balance money, + userName varchar(20) +) + +create table tbl_computer +( + id varchar(10) primary key, + oneUse varchar(2) check(oneUse='0' or oneUse='1') default(0), + note varchar(200) +) +go +create table tbl_record +( + id varchar(10) primary key, + cardId varchar(10) references tbl_card(id), + ComputerId varchar(10) references tbl_computer(id), + beginTime datetime not null, + endTime datetime not null, + fee money not null +) + +insert into tbl_card values +('0023_ABC','555',98,'张军'), +('0025_bbd','abe',300,'朱俊'), +('0036_CCD','何柳',100,'何柳'), +('0045_YGR','0045_YGR',58,'证验'), +('0078_RJV','55885fg',600,'校庆'), +('0084_ECD','zhang',134,'张峻') + +insert into tbl_computer values +('02','0','25555'), +('03','1','55555'), +('04','0','66666'), +('05','1','88888'), +('06','0','6888778'), +('B01','0','558558') + +insert into tbl_record values +('24','0078_RJV','B01','2007-07-15 19:00:00','2007-07-15 19:00:00','20'), +('34','0025_bbd','02','2006-12-25 18:00:00','2006-12-25 22:00:00','23'), +('45','0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00','50'), +('46','0023_ABC','03','2006-12-22 15:26:00','2006-12-22 22:55:00','6'), +('47','0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00','50'), +('48','0023_ABC','03','2007-01-06 15:25:00','2007-1-06 22:55:00','6'), +('55','0023_ABC','03','2006-07-21 15:26:00','2006-07-21 22:55:00','50'), +('64','0045_YGR','04','2006-12-24 18:00:00','2006-12-24 22:00:00','3'), +('65','0025_bbd','02','2006-12-28 18:00:00','2006-12-28 22:00:00','23'), +('98','0025_bbd','02','2006-12-26 18:00:00','2006-12-26 22:00:00','23') + + + +--1. 查询出用户名为'张军'的上网卡的上网记录,要求显示卡号,用户名,机器编号、开始时间、结束时间,和消费金额,并按消费金额降序排列 +select A.id 卡号,userName 用户名,ComputerId 机器编号,beginTime 开始时间,endTime 结束时间,fee 消费金额 +from tbl_record C inner join tbl_card A on A.id=C.cardId where userName='张军' order by fee desc + + +--2. 查询出每台机器上的上网次数和消费的总金额 +select ComputerId 机器编号, count(id) 上网次数, sum(fee) 消费总金额 from tbl_record group by fee,ComputerId + + +--3. 查询出所有已经使用过的上网卡的消费总金额 +select cardId 卡号,sum(fee) 消费总额 from tbl_record group by cardId + + +--4. 查询出从未消费过的上网卡的卡号和用户名 + +select A.id 卡号,userName 用户名 from tbl_card A left join tbl_record C on A.id=C.cardId where C.id is null + +--5. 将密码与用户名一样的上网卡信息查询出来 + +select * from tbl_card where userName=passWord + +--6. 查询出使用次数最多的机器号和使用次数 + +select top 1 ComputerId 机器号, count(*) 使用次数 from tbl_record group by ComputerId order by count(*) desc + +--7. 查询出卡号是以'ABC'结尾的卡号,用户名,上网的机器号和消费金额 + +select A.id 卡号,userName 用户名,ComputerId 上网机器编号,sum(fee) 消费金额 from tbl_card A +inner join tbl_record C on A.id=C.cardId where CardId like '%ABC' +group by A.id,userName,ComputerId + +--8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 + +select * from tbl_record where datename(weekday,beginTime)='星期六' or datename(weekday,beginTime)='星期日' + +--9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 + +select cardId 卡号,userName 用户名,ComputerId 机器号,beginTime 开始时间,endTime 结束时间,fee 消费金额 +from tbl_record C inner join tbl_card A on A.id=C.cardId +where endTime-beginTime>=12 + +--10. 查询除消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select cardId 卡号,userName 用户名,ComputerId 机器号,beginTime 开始时间,endTime 结束时间,fee 消费金额 +from tbl_record C inner join tbl_card A on A.id=C.cardId +except +select top 3 cardId 卡号,userName 用户名,ComputerId 机器号,beginTime 开始时间,endTime 结束时间,fee 消费金额 +from tbl_record C inner join tbl_card A on A.id=C.cardId +order by fee -- Gitee From 437b7d8d78840744ac3f8ebe965e39adc9229a1b Mon Sep 17 00:00:00 2001 From: yeqihang <438630074@qq.com> Date: Wed, 31 Mar 2021 21:52:28 +0800 Subject: [PATCH 109/144] =?UTF-8?q?=E6=96=B0=E5=BB=BA=20=E5=8F=B6=E5=90=AF?= =?UTF-8?q?=E8=88=AA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\345\217\266\345\220\257\350\210\252/.keep" | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\345\217\266\345\220\257\350\210\252/.keep" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\345\217\266\345\220\257\350\210\252/.keep" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\345\217\266\345\220\257\350\210\252/.keep" new file mode 100644 index 0000000..e69de29 -- Gitee From d7bc30c3f1c13c2ebf1b0d74b39cfa4853dfd480 Mon Sep 17 00:00:00 2001 From: yeqihang <438630074@qq.com> Date: Wed, 31 Mar 2021 21:52:40 +0800 Subject: [PATCH 110/144] =?UTF-8?q?=E5=8F=B6=E5=90=AF=E8=88=AA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SQLQuery16.sql" | 97 +++++++++++++++++++ 1 file changed, 97 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\345\217\266\345\220\257\350\210\252/SQLQuery16.sql" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\345\217\266\345\220\257\350\210\252/SQLQuery16.sql" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\345\217\266\345\220\257\350\210\252/SQLQuery16.sql" new file mode 100644 index 0000000..1d3d03e --- /dev/null +++ "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\345\217\266\345\220\257\350\210\252/SQLQuery16.sql" @@ -0,0 +1,97 @@ +use master +go +create database chargesystem +on +( + name='chargesystem', + filename='D:\chargesystem.mdf', + size=10, + maxsize=50, + filegrowth=5% +) +log on +( + name='chargesystem_log', + filename='D:\chargesystem_log.mdf', + size=10, + maxsize=50, + filegrowth=5% +) +go +use chargesystem +go +create table tbl_card +( + id varchar(10) primary key, + passWord nvarchar(10), + balance int, + userName nvarchar(10) +) +create table tbl_computer +( + id varchar(10) primary key, + onUse char(2) check(onUse=0 or onUse=1), + note varchar(20) +) +create table tbl_record +( + id int primary key, + cardid varchar(10) references tbl_card(id), + Computerid varchar(10) references tbl_computer(id), + beginTime datetime, + endTime datetime, + fee int +) + +insert into tbl_card values ('0023_ABC','555',98,'张军'), +('0025_bbd','abc',300,'朱俊'),('0036_CCD','何柳',100,'何柳'), +('0045_YGR','0045_YGR',58,'证验'),('0078_RJV','55885fg',600,'校庆'), +('0089_EDE','zhang',134,'张峻') + +insert into tbl_computer values ('02',0,25555),('03',0,55555), +('04',0,66666),('05',1,88888),('06',0,688878),('B01',0,558558) + +insert into tbl_record values (23,'0078_RJV','B01','2007-07-15 19:00:00','2007-07-15 21:00:00',20), +(34,'0025_BBD','02','2006-12-25 18:00:00','2006-12-25 22:00:00',23), +(45,'0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), +(46,'0023_ABC','03','2006-12-22 15:26:00','2006-12-22 22:55:00',6), +(47,'0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), +(48,'0023_ABC','03','2007-01-06 15:26:00','2007-01-06 22:55:00',6), +(55,'0023_ABC','03','2006-07-21 15:26:00','2006-07-21 22:55:00',50), +(64,'0045_YGR','04','2006-12-24 18:00:00','2006-12-24 22:00:00',3), +(65,'0025_bbd','02','2006-12-28 18:00:00','2006-12-28 22:00:00',23), +(98,'0025_bbd','02','2006-12-26 18:00:00','2006-12-26 22:00:00',23) + + +--1. 查询出用户名为'张军'的上网卡的上网记录,要求显示卡号,用户名,机器编号、开始时间、结束时间,和消费金额,并按消费金额降序排列 + select c.id 卡号,userName 用户名,Computerid 机器编号,beginTime 开始时间,endTime 结束时间,fee 消费金额 from tbl_card c inner join tbl_record r on c.id=r.cardid + where username='张军'order by fee desc +--2. 查询出每台机器上的上网次数和消费的总金额 + select Computerid 机器编号,COUNT(*) 上网次数,sum(fee) 总金额 from tbl_record group by Computerid +--3. 查询出所有已经使用过的上网卡的消费总金额 + select sum(fee) 消费总金额 from tbl_card c right join tbl_record r on c.id = r.cardid +--4. 查询出从未消费过的上网卡的卡号和用户名 + select c.id,userName from tbl_record r right join tbl_card c on r.cardid = c.id where fee is NULL or fee=' ' +--5. 将密码与用户名一样的上网卡信息查询出来 + select A.* from tbl_card A inner join tbl_card B on A.passWord=B.userName +--6. 查询出使用次数最多的机器号和使用次数 + select top 1 Computerid ,COUNT(*) from tbl_record group by Computerid order by count(*) desc +--7. 查询出卡号是以'ABC'结尾的卡号,用户名,上网的机器号和消费金额 + select c.id,userName,Computerid,fee from tbl_card c inner join tbl_record r on c.id =r.cardid where c.id like '%ABC' +--8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 + select c.id,userName,Computerid,beginTime,endTime,fee from tbl_record r inner join tbl_card c on r.cardid = c.id + where datename(DW,beginTime)='星期六' or datename(DW,beginTime)='星期日' +--9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 + select c.id,userName,Computerid,beginTime,endTime,fee from tbl_record r inner join tbl_card c on r.cardid = c.id + where DATEDIFF(HH,beginTime,endTime)>12 +--10. 查询除消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 + select c.id,userName,Computerid,beginTime,endTime,fee from tbl_card c inner join tbl_record r on c.id=r.cardid + where fee not in(select top 3 fee from tbl_record order by fee desc ) + + + select c.id,userName,Computerid,beginTime,endTime,fee from tbl_card c inner join tbl_record r on c.id=r.cardid + except + select top 3 c.id,userName,Computerid,beginTime,endTime,fee from tbl_card c inner join tbl_record r on c.id=r.cardid order by fee desc +select * from tbl_card +select * from tbl_computer +select * from tbl_record \ No newline at end of file -- Gitee From f9d3461dd0040681a7bd2ca50a0fcd6046ad01b3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=98=BF=E5=90=89?= <3011074719@qq.com> Date: Wed, 31 Mar 2021 21:58:54 +0800 Subject: [PATCH 111/144] =?UTF-8?q?=E9=99=88=E8=BF=9B=E5=90=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SQLQuery1.sql" | 120 ++++++++++++++++++ 1 file changed, 120 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/SQLQuery1.sql" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/SQLQuery1.sql" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/SQLQuery1.sql" new file mode 100644 index 0000000..5f28672 --- /dev/null +++ "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/SQLQuery1.sql" @@ -0,0 +1,120 @@ +--首先创建网吧计费系统的数据库,表结构和数据如2.bmp所示,表的说明如下: +create database ajiji +go +use ajiji +go + +--表一为上网卡信息表(tbl_card) +create table tbl_card +( +id varchar(20) primary key, --卡号 +passWord char(18) not null, --密码 +balance money , --卡上的余额 +userName nvarchar(10), --该上网卡所属的用户名 +) + +--表2为网吧机器说明表(tbl_computer) +create table tbl_computer +( +id varchar(20) primary key, --机器编号,主键 +onUse char(1) check (onUse in (1,0)),--该机器是否正在使用,0为未使用,1为正在使用 +note text , --该机器的说明 +) + +--表3为上网记录表(tbl_record): +create table tbl_record +( +id char(10) primary key, --记录编号 +cardId varchar(20) references tbl_card(id), --本次上网的卡号,外键 +ComputerId varchar(20) references tbl_computer(id), --本次上网记录所使用的机器号,外键 +beginTime datetime , --本次上网记录的开始时间 +endTime datetime , --本次上网记录的结束时间 +fee money , --本次上网的费用 +) + +insert into tbl_card values +('0023_ABC','555','98','张军'), +('0025_bbd','abe','300','朱俊'), +('0036_CCD','何柳','100','何柳'), +('0045_YGR','0045_YGR','58','证验'), +('0078_RJV','55885fg','600','校庆'), +('0089_EDE','zhang','134','张峻') + +insert into tbl_computer values +('02','0','25555'),('05','1','88888'), +('03','1','55555'),('06','0','688878'), +('04','0','66666'),('B01','0','558558') + +insert into tbl_record values +('23','0078_RJV','B01','2007-07-15 19:00:00','2007-07-15 21:00:00','20'), +('34','0025_bbd','03','2006-12-25 18:00:00','2006-12-25 22:00:00','23'), +('45','0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00','50'), +('46','0023_ABC','03','2006-12-22 15:26:00','2006-12-22 22:55:00','6'), +('47','0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00','50'), +('48','0023_ABC','03','2007-1-6 15:26:00','2007-1-6 22:55:00','6'), +('55','0023_ABC','03','2006-7-21 15:26:00','2006-7-21 22:55:00','50'), +('64','0045_YGR','04','2006-12-24 18:00:00','2006-12-24 22:00:00','3'), +('65','0025_bbd','02','2006-12-28 18:00:00','2006-12-28 22:00:00','23'), +('98','0025_bbd','02','2006-12-26 18:00:00','2006-12-26 22:00:00','23') + +select * from tbl_record +select * from tbl_card +select * from tbl_computer +--请完成以下题目: +--1. 查询出用户名为 '张军' 的上网卡的 上网记录,要求显示 卡号, 用户名 ,机器编号 、开始时间、结束时间,和消费金额,并按消费金额降序排列 +select * from tbl_record r +join tbl_card c on r.cardId=c.id +join tbl_computer co on r.ComputerId=co.id +where userName='张军' order by fee desc + +--2. 查询出 每台机器上的 上网次数 和 消费的总金额 +select ComputerId ,count(ComputerId),sum(fee) from tbl_record r +join tbl_card c on r.cardId=c.id +join tbl_computer co on r.ComputerId=co.id +group by ComputerId + +--3. 查询出 所有已经使用过的上网卡的 消费总金额 +select cardId,sum(fee) from tbl_record r +join tbl_card c on r.cardId=c.id +where fee is not null +group by cardId +--4. 查询出 从未消费过的上网卡的 卡号 和 用户名 +select c.id,userName from tbl_record r +right join tbl_card c on r.cardId=c.id +where fee is null +group by c.id,userName +--5. 将密码与用户名一样的上网卡信息查询出来 +select t1.* from tbl_card t1 +join tbl_card t2 on t1.passWord=t2.userName +--6. 查询出使用次数最多的机器号和使用次数 +select top 1 ComputerId,count(*) 使用次数 from tbl_record group by ComputerId order by 使用次数 DESC +--7. 查询出卡号是以'ABC'结尾的卡号,用户名,上网的机器号和消费金额 +select * from tbl_card c +join tbl_record r on c.id=r.cardId +where c.id like '%ABC' +--8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select cardId 卡号,userName 用户名,ComputerId 机器编号,beginTime 开始时间,endTime 结束时间,fee 消费金额 from tbl_record +join tbl_card on tbl_record.cardId = tbl_card.id +where DATENAME(DW,beginTime)='星期六' or DATENAME(DW,beginTime)='星期日' + +--9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select cardId 卡号,userName 用户名,ComputerId 机器编号,beginTime 开始时间,endTime 结束时间,fee 消费金额 from tbl_record +join tbl_card on tbl_record.cardId = tbl_card.id +where datediff(HH,beginTime,endTime)>12 + +select * from tbl_record where endtime-beginTime>12 + +--10. 查询出消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select cardId 卡号,userName 用户名,ComputerId 机器编号,beginTime 开始时间,endTime 结束时间,fee 消费金额 +from tbl_record join tbl_card on tbl_record.cardId = tbl_card.id +where fee in (select top 3 fee from tbl_record order by fee DESC) +order by fee DESC + +--11. 查询除消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select cardId 卡号,userName 用户名,ComputerId 机器编号,beginTime 开始时间,endTime 结束时间,fee 消费金额 from tbl_record +join tbl_card on tbl_record.cardId = tbl_card.id +where fee not in (select top 3 fee from tbl_record order by fee DESC) +order by fee DESC + +select * from tbl_record order by fee DESC + -- Gitee From 5c5aded084e6f44019878d404dcf9a7d4b259fdc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B1=E6=9E=97=E6=9E=AB?= <2905363801@qq.com> Date: Wed, 31 Mar 2021 22:02:02 +0800 Subject: [PATCH 112/144] =?UTF-8?q?=E6=96=B0=E5=BB=BA=20=E9=82=B1=E6=9E=97?= =?UTF-8?q?=E6=9E=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\351\202\261\346\236\227\346\236\253/.keep" | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\351\202\261\346\236\227\346\236\253/.keep" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\351\202\261\346\236\227\346\236\253/.keep" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\351\202\261\346\236\227\346\236\253/.keep" new file mode 100644 index 0000000..e69de29 -- Gitee From 05b6d968589eceb8ed28be6e675995d8aabc6e32 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B1=E6=9E=97=E6=9E=AB?= <2905363801@qq.com> Date: Wed, 31 Mar 2021 22:04:21 +0800 Subject: [PATCH 113/144] =?UTF-8?q?=E5=88=A0=E9=99=A4=E6=96=87=E4=BB=B6=20?= =?UTF-8?q?=E7=AC=AC=E5=8D=81=E4=B8=80=E6=AC=A1=E8=AF=BE=E4=BD=9C=E4=B8=9A?= =?UTF-8?q?/=E9=82=B1=E6=9E=97=E6=9E=AB/=E4=BD=9C=E4=B8=9A=E4=BA=8C.sql?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\344\275\234\344\270\232\344\272\214.sql" | 104 ------------------ 1 file changed, 104 deletions(-) delete mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\202\261\346\236\227\346\236\253/\344\275\234\344\270\232\344\272\214.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\202\261\346\236\227\346\236\253/\344\275\234\344\270\232\344\272\214.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\202\261\346\236\227\346\236\253/\344\275\234\344\270\232\344\272\214.sql" deleted file mode 100644 index f04c0bb..0000000 --- "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\202\261\346\236\227\346\236\253/\344\275\234\344\270\232\344\272\214.sql" +++ /dev/null @@ -1,104 +0,0 @@ -use master -go - -if exists(select * from sys.databases where name = 'tbl') -drop database tbl - -create database tbl -go - -use tbl -go - -create table tbl_card -( - id varchar(10) primary key, - passWord varchar(10) not null, - balance decimal(10,1) not null, - userName nchar(2) not null -) - -create table tbl_computer -( - id varchar(10) primary key, - onUse char(1) check(onUse='0' or onUse='1') not null, - note text -) - -create table tbl_record -( - id int primary key, - cardId varchar(10) references tbl_card(id) not null, - ComputerId varchar(10) references tbl_computer(id) not null, - beginTime datetime not null, - endTime datetime not null, - fee decimal(10,1) -) - -insert into tbl_card(id,passWord,balance,userName ) values -('0023_ABC','555','98','张军'), -('0025_bbd','abe','300','朱俊'), -('0036_CCD','何柳','100','何柳'), -('0045_YGR','0045_YGR','58','证验'), -('0078_RJV','55885fg','600','校庆'), -('0089_EDE','zhang','134','张峻') - - -insert into tbl_computer(id,onUse,note) values -('02',0,'25555'), -('03',1,'55555'), -('04',0,'66666'), -('05',1,'8888'), -('06',0,'688878'), -('B01',0,'558558') - -insert into tbl_record(id,cardId,ComputerId,beginTime,endTime,fee) values -('23','0078_RJV','B01','2007-07-15 19:00:00','2007-07-15 21:00:00','20'), -('34','0025_bbd','02','2006-12-25 18:00:00','2006-12-25 22:00:00','23'), -('45','0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00','50'), -('46','0023_ABC','03','2006-12-22 15:26:00','2006-12-22 22:55:00','6'), -('47','0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00','50'), -('48','0023_ABC','03','2007-01-06 15:26:00','2007-01-06 22:55:00','6'), -('55','0023_ABC','03','2006-07-21 15:26:00','2006-07-21 22:55:00','50'), -('64','0045_YGR','04','2006-12-24 18:00:00','2006-12-24 22:00:00','30'), -('65','0025_bbd','02','2006-12-28 18:00:00','2006-12-28 22:00:00','23'), -('98','0025_bbd','02','2006-12-26 18:00:00','2006-12-26 22:00:00','23') ---请完成以下题目: ---1. 查询出用户名为'张军'的上网卡的上网记录,要求显示卡号,用户名,机器编号、开始时间、结束时间,和消费金额,并按消费金额降序排列 -select tc.id 卡号,userName 用户名,tc.id 机器编号,beginTime 开始时间,endTime 结束时间,fee 消费金额 from tbl_card tc -inner join tbl_record tr on tc.id = tr.cardId where userName='张军' order by fee desc - ---2. 查询出每台机器上的上网次数和消费的总金额 -select ComputerId,count(*) 上网次数,sum(fee)消费的总金额 from tbl_record group by ComputerId - ---3. 查询出所有已经使用过的上网卡的消费总金额 -select cardId ,sum(fee)消费总金额 from tbl_record group by cardId - ---4. 查询出从未消费过的上网卡的卡号和用户名 -select tc.id,tc.userName from tbl_card tc -left join tbl_record tr on tr.cardId = tc.id where tr.id is null - ---5. 将密码与用户名一样的上网卡信息查询出来 -select * from tbl_card t1 join tbl_card t2 on t1.id = t2.id and t1.passWord = t2.userName - ---6. 查询出使用次数最多的机器号和使用次数 -select ComputerId,count(*)使用次数 from tbl_record group by ComputerId -having count(*)=(select max(m.使用次数) from (select ComputerId,count(*)使用次数 from tbl_record group by ComputerId)m) - ---7. 查询出卡号是以'ABC'结尾的卡号,用户名,上网的机器号和消费金额 -select tc.id 卡号,tc.userName 用户名,tr.ComputerId 机器号,tr.fee 消费金额 from tbl_record tr join tbl_card tc on tr.cardId = tc.id - -where tc.id like '%ABC' ---8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 -select tc.id 卡号,tc.userName 用户名,tr.ComputerId 机器号,beginTime 开始时间,endTime 结束时间,tr.fee 消费金额 from tbl_record tr join tbl_card tc on tr.cardId = tc.id -where datename(DW,beginTime)='星期六' or datename(DW,beginTime)='星期日' - ---9. 查询出一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 -select tc.id 卡号,tc.userName 用户名,tr.ComputerId 机器号,beginTime 开始时间,endTime 结束时间,tr.fee 消费金额 from tbl_record tr join tbl_card tc on tr.cardId = tc.id -where datediff(HH,beginTime,endTime)>12 - ---10. 查询出消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 -select tc.id 卡号,tc.userName 用户名,tr.ComputerId 机器号,beginTime 开始时间,endTime 结束时间, tr.fee 消费金额 from tbl_record tr join tbl_card tc on tr.cardId = tc.id -where tr.fee in (select distinct top 3 fee from tbl_record order by fee desc) order by fee desc - - -- Gitee From e7c5a200a5bd4eda41bd71155bee5e04971261c1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B1=E6=9E=97=E6=9E=AB?= <2905363801@qq.com> Date: Wed, 31 Mar 2021 22:05:14 +0800 Subject: [PATCH 114/144] =?UTF-8?q?=E5=88=A0=E9=99=A4=E6=96=87=E4=BB=B6=20?= =?UTF-8?q?=E7=AC=AC=E5=8D=81=E4=B8=80=E6=AC=A1=E8=AF=BE=E4=BD=9C=E4=B8=9A?= =?UTF-8?q?/=E9=82=B1=E6=9E=97=E6=9E=AB/SQLQuery1.sql?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SQLQuery1.sql" | 56 ------------------- 1 file changed, 56 deletions(-) delete mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\202\261\346\236\227\346\236\253/SQLQuery1.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\202\261\346\236\227\346\236\253/SQLQuery1.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\202\261\346\236\227\346\236\253/SQLQuery1.sql" deleted file mode 100644 index 7edfc8a..0000000 --- "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\351\202\261\346\236\227\346\236\253/SQLQuery1.sql" +++ /dev/null @@ -1,56 +0,0 @@ ---有如图所示的三张表结构,学生信息表(stuInfo),课程信息表(courseInfo),分数信息表(scoreInfo) - ---题目: - -select * from stuInfo - -select * from scoreInfo - -select * from courseInfo - - ---1.查询出 每个学生 所选修的课程的数量 和 所选修的课程的考试的平均分 -select stuName 学生,count(distinct courseId) 课程数量,AVG(score)平均分 from scoreInfo -inner join stuInfo on stuInfo.stuId = scoreInfo.stuId -group by stuName - -select distinct stuAge,stuSex from stuInfo - ---2.查询出 每门课程 的选修的学生的个数 和 学生考试的总分 -select courseId,COUNT(distinct stuId)学生个数,SUM(score)考试总分 from scoreInfo group by courseId - ---3.查询出性别一样并且年龄一样的学生的信息 -select A.* from stuInfo A,stuInfo B where A.stuSex=B.stuSex AND A.stuAge=B.stuAge AND A.stuId!=B.stuId - ---4.查询出学分一样的课程信息 -SELECT DISTINCT A.* FROM courseInfo A,courseInfo B where A.courseMarks=B.courseMarks and A.courseId<>B.courseId - ---5.查询出参加了考试的学生的学号,姓名,课程号和分数 -select stuInfo.stuId,stuInfo.stuName,courseId,score from scoreInfo,stuInfo where scoreInfo.stuId=stuInfo.stuId--相当于内连接 ---内连接,查询的结果 = 共同的记录 - ---6.查询出参加了考试的学生的学号,课程号,课程名,课程学分和分数 -select SI.stuId,SI.stuName,C.courseId,C.courseName,C.courseMarks,score from scoreInfo SC -INNER JOIN stuInfo SI ON SI.stuId= SC.stuId -INNER JOIN courseInfo C ON C.courseId= SC.courseId - ---7.查询出没有参加考试的学生的学号和姓名 -select stuinfo.stuId,stuName from scoreInfo -right join stuInfo on scoreInfo.stuId=stuInfo.stuId -where scoreInfo.scoreId is null - ---8.查询出 是周六或者周天 来报到的学生 ---日期函数 datediff dateadd ---日期函数 datename datepart -select DATENAME(DW,GETDATE()) --返回字符串 -select datepart(DW,GETDATE()) --返回数字,周天是第一天 -select datename(DW,'2007-01-06 01:11:36.590') -select * from stuInfo WHERE DATENAME(DW,time)='星期日' or DATEPART(DW,time)=7 - ---9.查询出姓名中有字母a的学生的信息 - - ---10.查询出 选修了2门课程以上 的并且考试平均分在70以上 的 (每个)学生的 学号 和 考试平均分 以及 选修课程的数量 -select stuName 学生,AVG(score)平均分,COUNT(distinct courseId)课程数量 from scoreInfo SI -inner join stuInfo ST on ST.stuId=SI.stuId -group by stuName having COUNT(distinct courseId)>2 and AVG(score)>70 -- Gitee From 351b8402b4b97ae7601e63d5e3678e519d7580da Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B1=E6=9E=97=E6=9E=AB?= <2905363801@qq.com> Date: Wed, 31 Mar 2021 22:05:33 +0800 Subject: [PATCH 115/144] =?UTF-8?q?=E9=82=B1=E6=9E=97=E6=9E=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\344\275\234\344\270\232\344\272\214.sql" | 104 ++++++++++++++++++ 1 file changed, 104 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\351\202\261\346\236\227\346\236\253/\344\275\234\344\270\232\344\272\214.sql" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\351\202\261\346\236\227\346\236\253/\344\275\234\344\270\232\344\272\214.sql" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\351\202\261\346\236\227\346\236\253/\344\275\234\344\270\232\344\272\214.sql" new file mode 100644 index 0000000..eecbb0c --- /dev/null +++ "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\351\202\261\346\236\227\346\236\253/\344\275\234\344\270\232\344\272\214.sql" @@ -0,0 +1,104 @@ +use master +go + +if exists(select * from sys.databases where name = 'tbl') +drop database tbl + +create database tbl +go + +use tbl +go + +create table tbl_card +( + id varchar(10) primary key, + passWord varchar(10) not null, + balance decimal(10,1) not null, + userName nchar(2) not null +) + +create table tbl_computer +( + id varchar(10) primary key, + onUse char(1) check(onUse='0' or onUse='1') not null, + note text +) + +create table tbl_record +( + id int primary key, + cardId varchar(10) references tbl_card(id) not null, + ComputerId varchar(10) references tbl_computer(id) not null, + beginTime datetime not null, + endTime datetime not null, + fee decimal(10,1) +) + +insert into tbl_card(id,passWord,balance,userName ) values +('0023_ABC','555','98','寮犲啗'), +('0025_bbd','abe','300','鏈变繆'), +('0036_CCD','浣曟煶','100','浣曟煶'), +('0045_YGR','0045_YGR','58','璇侀獙'), +('0078_RJV','55885fg','600','鏍″簡'), +('0089_EDE','zhang','134','寮犲郴') + + +insert into tbl_computer(id,onUse,note) values +('02',0,'25555'), +('03',1,'55555'), +('04',0,'66666'), +('05',1,'8888'), +('06',0,'688878'), +('B01',0,'558558') + +insert into tbl_record(id,cardId,ComputerId,beginTime,endTime,fee) values +('23','0078_RJV','B01','2007-07-15 19:00:00','2007-07-15 21:00:00','20'), +('34','0025_bbd','02','2006-12-25 18:00:00','2006-12-25 22:00:00','23'), +('45','0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00','50'), +('46','0023_ABC','03','2006-12-22 15:26:00','2006-12-22 22:55:00','6'), +('47','0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00','50'), +('48','0023_ABC','03','2007-01-06 15:26:00','2007-01-06 22:55:00','6'), +('55','0023_ABC','03','2006-07-21 15:26:00','2006-07-21 22:55:00','50'), +('64','0045_YGR','04','2006-12-24 18:00:00','2006-12-24 22:00:00','30'), +('65','0025_bbd','02','2006-12-28 18:00:00','2006-12-28 22:00:00','23'), +('98','0025_bbd','02','2006-12-26 18:00:00','2006-12-26 22:00:00','23') +--璇峰畬鎴愪互涓嬮鐩細 +--1. 鏌ヨ鍑虹敤鎴峰悕涓'寮犲啗'鐨勪笂缃戝崱鐨勪笂缃戣褰曪紝瑕佹眰鏄剧ず鍗″彿锛岀敤鎴峰悕锛屾満鍣ㄧ紪鍙枫佸紑濮嬫椂闂淬佺粨鏉熸椂闂达紝鍜屾秷璐归噾棰濓紝骞舵寜娑堣垂閲戦闄嶅簭鎺掑垪 +select tc.id 鍗″彿,userName 鐢ㄦ埛鍚,tc.id 鏈哄櫒缂栧彿,beginTime 寮濮嬫椂闂,endTime 缁撴潫鏃堕棿,fee 娑堣垂閲戦 from tbl_card tc +inner join tbl_record tr on tc.id = tr.cardId where userName='寮犲啗' order by fee desc + +--2. 鏌ヨ鍑烘瘡鍙版満鍣ㄤ笂鐨勪笂缃戞鏁板拰娑堣垂鐨勬婚噾棰 +select ComputerId,count(*) 涓婄綉娆℃暟,sum(fee)娑堣垂鐨勬婚噾棰 from tbl_record group by ComputerId + +--3. 鏌ヨ鍑烘墍鏈夊凡缁忎娇鐢ㄨ繃鐨勪笂缃戝崱鐨勬秷璐规婚噾棰 +select cardId ,sum(fee)娑堣垂鎬婚噾棰 from tbl_record group by cardId + +--4. 鏌ヨ鍑轰粠鏈秷璐硅繃鐨勪笂缃戝崱鐨勫崱鍙峰拰鐢ㄦ埛鍚 +select tc.id,tc.userName from tbl_card tc +left join tbl_record tr on tr.cardId = tc.id where tr.id is null + +--5. 灏嗗瘑鐮佷笌鐢ㄦ埛鍚嶄竴鏍风殑涓婄綉鍗′俊鎭煡璇㈠嚭鏉 +select * from tbl_card t1 join tbl_card t2 on t1.id = t2.id and t1.passWord = t2.userName + +--6. 鏌ヨ鍑轰娇鐢ㄦ鏁版渶澶氱殑鏈哄櫒鍙峰拰浣跨敤娆℃暟 +select ComputerId,count(*)浣跨敤娆℃暟 from tbl_record group by ComputerId +having count(*)=(select max(m.浣跨敤娆℃暟) from (select ComputerId,count(*)浣跨敤娆℃暟 from tbl_record group by ComputerId)m) + +--7. 鏌ヨ鍑哄崱鍙锋槸浠'ABC'缁撳熬鐨勫崱鍙凤紝鐢ㄦ埛鍚嶏紝涓婄綉鐨勬満鍣ㄥ彿鍜屾秷璐归噾棰 +select tc.id 鍗″彿,tc.userName 鐢ㄦ埛鍚,tr.ComputerId 鏈哄櫒鍙,tr.fee 娑堣垂閲戦 from tbl_record tr join tbl_card tc on tr.cardId = tc.id + +where tc.id like '%ABC' +--8. 鏌ヨ鍑烘槸鍛ㄥ叚銆佸懆澶╀笂缃戠殑璁板綍锛岃姹傛樉绀轰笂缃戠殑鍗″彿锛岀敤鎴峰悕锛屾満鍣ㄥ彿锛屽紑濮嬫椂闂淬佺粨鏉熸椂闂村拰娑堣垂閲戦 +select tc.id 鍗″彿,tc.userName 鐢ㄦ埛鍚,tr.ComputerId 鏈哄櫒鍙,beginTime 寮濮嬫椂闂,endTime 缁撴潫鏃堕棿,tr.fee 娑堣垂閲戦 from tbl_record tr join tbl_card tc on tr.cardId = tc.id +where datename(DW,beginTime)='鏄熸湡鍏' or datename(DW,beginTime)='鏄熸湡鏃' + +--9. 鏌ヨ鍑轰竴娆′笂缃戞椂闂磋秴杩12灏忔椂鐨勭殑涓婄綉璁板綍锛岃姹傛樉绀轰笂缃戠殑鍗″彿锛岀敤鎴峰悕锛屾満鍣ㄥ彿锛屽紑濮嬫椂闂淬佺粨鏉熸椂闂村拰娑堣垂閲戦 +select tc.id 鍗″彿,tc.userName 鐢ㄦ埛鍚,tr.ComputerId 鏈哄櫒鍙,beginTime 寮濮嬫椂闂,endTime 缁撴潫鏃堕棿,tr.fee 娑堣垂閲戦 from tbl_record tr join tbl_card tc on tr.cardId = tc.id +where datediff(HH,beginTime,endTime)>12 + +--10. 鏌ヨ鍑烘秷璐归噾棰濇帓鍒楀墠涓夊悕(鏈楂)鐨勪笂缃戣褰曪紝瑕佹眰鏄剧ず涓婄綉鐨勫崱鍙凤紝鐢ㄦ埛鍚嶏紝鏈哄櫒鍙凤紝寮濮嬫椂闂淬佺粨鏉熸椂闂村拰娑堣垂閲戦 +select tc.id 鍗″彿,tc.userName 鐢ㄦ埛鍚,tr.ComputerId 鏈哄櫒鍙,beginTime 寮濮嬫椂闂,endTime 缁撴潫鏃堕棿, tr.fee 娑堣垂閲戦 from tbl_record tr join tbl_card tc on tr.cardId = tc.id +where tr.fee in (select distinct top 3 fee from tbl_record order by fee desc) order by fee desc + + -- Gitee From 1c1ce885db4f2231af93efb4ff291feb72dfe024 Mon Sep 17 00:00:00 2001 From: tan1 <3118123975@qq.com> Date: Wed, 31 Mar 2021 22:08:46 +0800 Subject: [PATCH 116/144] first commit --- .../SQLQuery11-2.sql" | 98 +++++++++++++++++++ 1 file changed, 98 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\233\271\346\226\207\346\226\214/SQLQuery11-2.sql" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\233\271\346\226\207\346\226\214/SQLQuery11-2.sql" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\233\271\346\226\207\346\226\214/SQLQuery11-2.sql" new file mode 100644 index 0000000..237be26 --- /dev/null +++ "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\233\271\346\226\207\346\226\214/SQLQuery11-2.sql" @@ -0,0 +1,98 @@ +use master +go +create database chargesystem +on +( + name='chargesystem', + filename='D:\chargesystem.mdf', + size=10, + maxsize=50, + filegrowth=5% +) +log on +( + name='chargesystem_log', + filename='D:\chargesystem_log.mdf', + size=10, + maxsize=50, + filegrowth=5% +) +go +use chargesystem +go +create table tbl_card +( + id varchar(10) primary key, + passWord nvarchar(10), + balance int, + userName nvarchar(10) +) +create table tbl_computer +( + id varchar(10) primary key, + onUse char(2) check(onUse=0 or onUse=1), + note varchar(20) +) +create table tbl_record +( + id int primary key, + cardid varchar(10) references tbl_card(id), + Computerid varchar(10) references tbl_computer(id), + beginTime datetime, + endTime datetime, + fee int +) + +insert into tbl_card values ('0023_ABC','555',98,'张军'), +('0025_bbd','abc',300,'朱俊'),('0036_CCD','何柳',100,'何柳'), +('0045_YGR','0045_YGR',58,'证验'),('0078_RJV','55885fg',600,'校庆'), +('0089_EDE','zhang',134,'张峻') + +insert into tbl_computer values ('02',0,25555),('03',0,55555), +('04',0,66666),('05',1,88888),('06',0,688878),('B01',0,558558) + +insert into tbl_record values (23,'0078_RJV','B01','2007-07-15 19:00:00','2007-07-15 21:00:00',20), +(34,'0025_BBD','02','2006-12-25 18:00:00','2006-12-25 22:00:00',23), +(45,'0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), +(46,'0023_ABC','03','2006-12-22 15:26:00','2006-12-22 22:55:00',6), +(47,'0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), +(48,'0023_ABC','03','2007-01-06 15:26:00','2007-01-06 22:55:00',6), +(55,'0023_ABC','03','2006-07-21 15:26:00','2006-07-21 22:55:00',50), +(64,'0045_YGR','04','2006-12-24 18:00:00','2006-12-24 22:00:00',3), +(65,'0025_bbd','02','2006-12-28 18:00:00','2006-12-28 22:00:00',23), +(98,'0025_bbd','02','2006-12-26 18:00:00','2006-12-26 22:00:00',23) +--(上网卡信息表) +--(网吧机器说明表) +--(上网记录表) +select * from tbl_card +select * from tbl_computer +select * from tbl_record +--请完成以下题目: +--1. 查询出用户名为'张军'的上网卡的上网记录,要求显示卡号,用户名,机器编号、开始时间、结束时间,和消费金额,并按消费金额降序排列 +select tbl_card.id,userName,tbl_record.id,beginTime,endTime,fee from tbl_record +inner join tbl_card on tbl_card.id=tbl_record.cardid +where userName='张军'order by fee desc +--2. 查询出每台机器上的上网次数和消费的总金额 +select Computerid,count(*)上网次数,sum(fee)总金额 from tbl_record group by Computerid,fee +--3. 查询出所有已经使用过的上网卡的消费总金额 +select sum(fee) from tbl_record inner join tbl_card on tbl_record.cardid=tbl_card.id +--4. 查询出从未消费过的上网卡的卡号和用户名 +select tbl_card.id,userName from tbl_card +left join tbl_record on tbl_record.cardid=tbl_card.id where fee is null +--5. 将密码与用户名一样的上网卡信息查询出来 +select * from tbl_card A inner join tbl_card B on A.passWord=B.userName +--6. 查询出使用次数最多的机器号和使用次数 +select top 1 cardid,count(*)使用次数 from tbl_record group by cardid +--7. 查询出卡号是以'ABC'结尾的卡号,用户名,上网的机器号和消费金额 +select userName,tbl_record.Computerid,fee from tbl_record inner join tbl_card on tbl_card.id=tbl_record.cardid +where cardid like '%ABC' +--8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select tbl_card.id,tbl_card.userName,tbl_record.Computerid,beginTime,endTime,tbl_record.fee from tbl_record +inner join tbl_card on tbl_card.id=tbl_record.cardid +where datename(DW,beginTime)='星期六' or datename(DW,beginTime)='星期日' +--9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select tbl_record.id,userName,Computerid,beginTime,endTime,fee from tbl_record inner join tbl_card on tbl_card.id=cardid +where (beginTime-endTime)>12 +--10. 查询除消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select top 3 fee, tbl_record.id,userName,Computerid,beginTime,endTime from tbl_record inner join tbl_card on tbl_card.id=cardid +order by fee desc \ No newline at end of file -- Gitee From 766f8874365084d8f229bd775376cda930d6e28f Mon Sep 17 00:00:00 2001 From: lazy3698 <2820608163@qq.com> Date: Wed, 31 Mar 2021 22:10:43 +0800 Subject: [PATCH 117/144] =?UTF-8?q?=E4=BD=9C=E4=B8=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\346\235\216\344\274\237/1111.sql" | 122 ++++++++++++++++++ 1 file changed, 122 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\235\216\344\274\237/1111.sql" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\235\216\344\274\237/1111.sql" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\235\216\344\274\237/1111.sql" new file mode 100644 index 0000000..19f2608 --- /dev/null +++ "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\235\216\344\274\237/1111.sql" @@ -0,0 +1,122 @@ +use master +go +create database cbb +on +( +name='cbb', +filename='D:\cbb.mdf', +size=5mb, +maxsize=20mb, +filegrowth=10% +) +log on +( +name='cbb_log', +filename='D:\cbb_log.ldf', +size=5mb, +maxsize=20mb, +filegrowth=10% +) +use cbb +go +create table tbl_card +( +CardId char(30) primary key , +passWord char(20) not null, +balance int not null, +userName nvarchar(20) not null +) +create table tbl_computer +( +ComputerId varchar(20) primary key , +onUse char not null, +note int +) +create table tbl_record +( +RecordId int primary key , +cardId char(30) references tbl_card(CardId) not null , +ComputerId varchar(20) references tbl_computer(ComputerId) not null, +beginTime datetime, +endTime datetime, +fee money +) +insert into tbl_card values +('0023_ABC','555',98,'张军'), +('0025_bbd','abe',300,'朱俊'), +('0036_CCD','何柳',100,'何柳'), +('0045_YGR','0045_YGR',58,'证验'), +('0078_RJV','55885fg',600,'校庆'), +('0089_EDE','zhang',134,'张峻') +select * from tbl_card +insert into tbl_computer values +('02',0,25555), +('03',1,55555), +('04',0,66666), +('05',1,88888), +('06',0,688878), +('B01',0,558558) +select * from tbl_computer +insert into tbl_record values +(23,'0078_RJV','B01','2007-07-15 19:00:00','2007-07-15 21:00:00',20), +(34,'0025_bbd','02','2006-12-25 18:00:00','2006-12-25 22:00:00',23), +(45,'0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), +(46,'0023_ABC','03','2006-12-22 15:26:00','2006-12-22 22:55:00',6), +(47,'0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), +(48,'0023_ABC','03','2007-01-06 15:26:00','2007-01-06 22:55:00',6), +(55,'0023_ABC','03','2006-07-21 15:26:00','2006-07-21 22:55:00',50), +(64,'0045_YGR','04','2006-12-24 18:00:00','2006-12-24 22:00:00',300), +(65,'0025_bbd','02','2006-12-28 18:00:00','2006-12-28 22:00:00',23), +(98,'0025_bbd','02','2006-12-26 18:00:00','2006-12-26 22:00:00',23) +select * from tbl_record + + +--1. 查询出用户名为'张军'的上网卡的上网记录,要求显示卡号,用户名,机器编号、开始时间、结束时间,和消费金额,并按消费金额降序排列 +select Tc.CardId,userName,ComputerId ,beginTime ,endTime ,fee from tbl_card TC +inner join tbl_record TR on TC.CardId=TR.cardId where userName='张军' +order by fee desc + +--2. 查询出每台机器上的上网次数和消费的总金额 +select TC.ComputerId,count(*),sum(fee) from tbl_computer TC +inner join tbl_record TR on TC.ComputerId=TR.ComputerId group by TC.ComputerId + +--3. 查询出所有已经使用过的上网卡的消费总金额 +select TC.CardId,sum(fee) from tbl_card TC +inner join tbl_record TR on TC.CardId=TR.cardId group by TC.CardId + +--4. 查询出从未消费过的上网卡的卡号和用户名 +select TC.CardId,userName from tbl_card TC +left join tbl_record TR on TC.CardId=TR.cardId where fee is NULL or fee ='' + +--5. 将密码与用户名一样的上网卡信息查询出来 +select * from tbl_card A +inner join tbl_card B on A.passWord=B.userName + +--6. 查询出使用次数最多的机器号和使用次数 +select TC.ComputerID,count(*)from tbl_computer TC +inner join tbl_record TR on TC.ComputerId=TR.ComputerId +group by TC.ComputerId + +--7. 查询出卡号是以'ABC'结尾的卡号,用户名,上网的机器号和消费金额 +select TC.CardId,userName,ComputerId ,sum(fee) from tbl_card TC +inner join tbl_record TR on TC.CardId=TR.cardId where TC.CardId like '%ABC'GROUP BY TC.CardId,userName,ComputerId + +--8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +SELECT TC.CardId,userName ,ComputerId,beginTime,endTime ,SUM(fee) from tbl_card TC +inner join tbl_record TR on TC.CardId=TR.cardId +group by TC.CardId,TC.userName,TR.ComputerId,beginTime,endTime having DATENAME(DW,beginTime)='星期六'or DATEPART(DW,beginTime)=1 + +--9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、 +select tc.cardId, tc.userName, tr.ComputerId, tr.beginTime, tr.endTime, tr.fee +from tbl_record tr +join tbl_card tc on tr.cardId = tc.cardId +where + DATEDIFF(HH, tr.beginTime, tr.endTime) > 12 +--10. 查询除消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select tc.cardId, tc.userName, tr.ComputerId, tr.beginTime, tr.endTime, tr.fee +from tbl_record tr +join tbl_card tc +on tr.cardId = tc.cardId +where tr.fee in ( select distinct top 3 fee from tbl_record order by fee desc) order by tr.fee desc + + -- Gitee From 963347dd7226544b3335601ea339dd1b4589b285 Mon Sep 17 00:00:00 2001 From: guozhencan <1431250115@qq.com> Date: Wed, 31 Mar 2021 22:11:29 +0800 Subject: [PATCH 118/144] first commit --- .../SQLQuery2.sql" | 153 ++++++++++++++++++ 1 file changed, 153 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\351\203\255\346\214\257\347\201\277/SQLQuery2.sql" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\351\203\255\346\214\257\347\201\277/SQLQuery2.sql" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\351\203\255\346\214\257\347\201\277/SQLQuery2.sql" new file mode 100644 index 0000000..8873bd3 --- /dev/null +++ "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\351\203\255\346\214\257\347\201\277/SQLQuery2.sql" @@ -0,0 +1,153 @@ + +--首先创建网吧计费系统的数据库,表结构和数据如2.bmp所示,表的说明如下: +create database WWW +go +use WWW +go +--表一为上网卡信息表(tbl_card) +--id: 卡号,主键 +--passWord:密码 +--balance:卡上的余额 +--userName:该上网卡所属的用户名 +create table tbl_card +( +ID nvarchar(10) primary key, +PassWord nvarchar(20) not null, +Balance decimal(10,1) not null, +UserName nvarchar(10) not null +) +insert into tbl_card values +('0023_ABC','555',98,'张军'), +('0025_bbd','abe',300,'朱俊'), +('0036_CCD','何柳',100,'何柳'), +('0045_YGR','0045_YGR',58,'证验'), +('0078_RJV','55885fg',600,'校庆'), +('0089_EDE','zhang',134,'张俊') +select * from tbl_card +--表2为网吧机器说明表(tbl_computer) +--id:机器编号,主键 +--onUse:该机器是否正在使用,0为未使用,1为正在使用 +--note:该机器的说明 +create table tbl_computer +( +ID varchar(10) primary key, +OnUse varchar(10) check(OnUse='1' or OnUse='0') not null, +Note nvarchar(10) not null +) +insert into tbl_computer values +('02',0,25555), +('03',1,55555), +('04',0,66666), +('05',1,88888), +('06',0,688878), +('B01',0,558558) +select * from tbl_computer +--表3为上网记录表(tbl_record): +--id:记录编号,主键 +--cardId:本次上网的卡号,外键 +--ComputerId:本次上网记录所使用的机器号,外键 +--beginTime:本次上网记录的开始时间 +--endTime:本次上网记录的结束时间 +--fee:本次上网的费用 +create table tbl_record +( +ID varchar(10) primary key, +CardID nvarchar(10) references tbl_card(ID), +ComputerID varchar(10) references tbl_computer(ID), +BeginTime datetime not null, +EndTime datetime not null, +Fee decimal(10,1) +) +insert into tbl_record values +('23','0078_RJV','B01','2007-07-15 19:00:00','2007-07-15 21:00:00',20), +('34','0025_bbd','02','2006-12-25 18:00:00','2006-12-25 22:00:00',23), +('45','0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), +('46','0023_ABC','03','2006-12-22 15:26:00','2006-12-22 22:55:00',6), +('47','0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), +('48','0023_ABC','03','2007-01-06 15:26:00','2007-01-06 22:55:00',6), +('55','0023_ABC','03','2006-07-21 15:26:00','2006-07-21 22:55:00',50), +('64','0045_YGR','04','2006-12-24 18:00:00','2006-12-24 22:00:00',30), +('65','0025_bbd','02','2006-12-28 18:00:00','2006-12-28 22:00:00',23), +('98','0025_bbd','02','2006-12-26 18:00:00','2006-12-26 22:00:00',23) +select * from tbl_record +--请完成以下题目: + +--表一为上网卡信息表(tbl_card) +--id: 卡号,主键 +--passWord:密码 +--balance:卡上的余额 +--userName:该上网卡所属的用户名 + +--表2为网吧机器说明表(tbl_computer) +--id:机器编号,主键 +--onUse:该机器是否正在使用,0为未使用,1为正在使用 +--note:该机器的说明 + + +--表3为上网记录表(tbl_record): +--id:记录编号,主键 +--cardId:本次上网的卡号,外键 +--ComputerId:本次上网记录所使用的机器号,外键 +--beginTime:本次上网记录的开始时间 +--endTime:本次上网记录的结束时间 +--fee:本次上网的费用 + +select * from tbl_card + +select * from tbl_record + +select * from tbl_computer + +--1. 查询出用户名为 '张军' 的上网卡的上网记录,要求显示 卡号,用户名,机器编号、开始时间、结束时间,和消费金额,并按消费金额降序排列 + +select TC.ID 卡号,TC.UserName 用户名,TR.ComputerID 机器编号,TR.BeginTime 开始时间,TR.EndTime 结束时间,TR.Fee 消费金额 +from tbl_record TR join tbl_card TC on TR.CardID = TC.ID where TC.UserName = '张军' order by TR.Fee DESC + +--2. 查询出每台机器上的 上网次数 和 消费的总金额 + +select ComputerID,COUNT(ComputerID) 上网次数,SUM(Fee) 总金额 from tbl_record group by ComputerID + +--3. 查询出所有已经使用过的上网卡的 消费总金额 + +select cardId, SUM(Fee) 总金额 from tbl_record group by cardId + +--4. 查询出从未消费过的上网卡的 卡号 和 用户名 + +select TC.ID 卡号,TC.UserName 用户名 from tbl_record TR +right join tbl_card TC on TR.CardID = TC.ID where TR.Fee is null group by TC.ID,TC.UserName + +--5. 将密码与用户名一样的上网卡信息查询出来 + +select * from tbl_card TC join tbl_card BC on TC.ID = BC.ID where TC.PassWord = BC.UserName + +--6. 查询出使用次数最多的机器号和使用次数 + +select TR.ComputerID 机器号,COUNT(*) 使用次数 from tbl_record TR +join tbl_computer LC on TR.ComputerID = LC.ID group by TR.ComputerID +having TR.ComputerID = (select top 1 ComputerID from tbl_record group by ComputerID order by COUNT (*) DESC) + +--7. 查询出卡号是以'ABC'结尾的卡号,用户名,上网的机器号和消费金额 + +select TC.ID 卡号,TC.UserName 用户名,TR.ComputerID 机器编号,TR.Fee 消费金额 from tbl_record TR +join tbl_card TC on TR.CardID = TC.ID where TC.ID like '%ABC'group by TC.ID,TC.UserName,TR.ComputerID,TR.Fee + +--8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 + +select TC.ID 卡号,TC.UserName 用户名,TR.ComputerID 机器编号,TR.BeginTime 开始时间,TR.EndTime 结束时间,TR.Fee 消费金额 +from tbl_record TR join tbl_card TC on TR.CardID = TC.ID +where DATENAME (DW,BeginTime)='星期六' or DATENAME (DW,BeginTime)='星期日' + +--9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 + +select TC.ID 卡号,TC.UserName 用户名,TR.ComputerID 机器编号,TR.BeginTime 开始时间,TR.EndTime 结束时间,TR.Fee 消费金额 +from tbl_record TR join tbl_card TC on TR.CardID = TC.ID +where DATEDIFF(HH,EndTime,BeginTime)>12 + +--10. 查询出消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 + +select TC.ID 卡号,TC.UserName 用户名,TR.ComputerID 机器编号,TR.BeginTime 开始时间,TR.EndTime 结束时间,TR.Fee 消费金额 +from tbl_record TR join tbl_card TC on TR.CardID = TC.ID +where Fee not in (select top 3 Fee from tbl_record order by Fee desc)order by Fee desc + + + -- Gitee From a6be0560205648164fd0032dbf5cb6f720b9f83f Mon Sep 17 00:00:00 2001 From: futurestare <2528134883@qq.com> Date: Wed, 31 Mar 2021 22:22:33 +0800 Subject: [PATCH 119/144] first commit --- .../SQLQuery3.sql" | 82 +++++++++++++++++++ 1 file changed, 82 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\203\241\346\264\245\345\215\216/SQLQuery3.sql" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\203\241\346\264\245\345\215\216/SQLQuery3.sql" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\203\241\346\264\245\345\215\216/SQLQuery3.sql" new file mode 100644 index 0000000..0e334ac --- /dev/null +++ "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\203\241\346\264\245\345\215\216/SQLQuery3.sql" @@ -0,0 +1,82 @@ +use master +go +create database Computer +on +( + name='Computer ', + filename='D:\SQLwork\Computer.mdf', + Size=5MB, + maxsize=50MB, + filegrowth=10% + ) + log on +( +name='Computer _log', + filename='D:\SQLwork\Computer_log.ldf', + Size=5MB, + maxsize=50MB, + filegrowth=10% +) +go +use Computer +go +create table tbl_card +( +cardId nvarchar(10) primary key , +passWord nvarchar(10) , +balance money , +userName nvarchar(10), +) +create table tbl_computer +( +computerId nvarchar(10) primary key , +onUse int check(onUse=0 or onUse =1), +note text, +) +create table tbl_record +( +recordId int primary key , +cardId nvarchar(10) references tbl_card(cardId), +computerId nvarchar(10) references tbl_computer(computerId), +beginTime datetime, +endTime datetime, +fee money, +) +select * from tbl_card +select * from tbl_computer +select * from tbl_record +insert into tbl_card values ('0023_ABC','555',98,'张军'),('0025_bbd','abe',300,'朱俊'),('0036_CDD','何柳',100,'何柳'),('0045_YGR','0045_YGR',58,'证验'),('0078_RJV','55885fg',600,'校庆'),('0089_EDE','zhang',134,'张峻') +insert into tbl_computer values ('02',0,'25555'),('03',1,'55555'),('04',0,'66666'),('05',1,'88888'),('06',0,'688878'),('B01',0,'558558') +insert into tbl_record values (23,'0078_RJV','B01','2007-07-15 19:00:00','2007-07-15 21:00:00',20), +(34,'0025_bbd','02','2006-12-25 18:00:00','2006-12-25 22:00:00',23), +(45,'0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), +(46,'0023_ABC','03','2006-12-22 15:26:00','2006-12-22 22:55:00',6), +(47,'0023_ABC','03','2006-12-22 15:26:00','2006-12-22 22:55:00',50), +(48,'0023_ABC','03','2007-01-06 15:26:00','2007-01-06 22:55:00',6), +(55,'0023_ABC','03','2006-07-21 15:26:00','2006-07-21 22:55:00',50), +(64,'0045_YGR','04','2006-12-24 18:00:00','2006-12-24 22:00:00',3), +(65,'0025_bbd','02','2006-12-28 18:00:00','2006-12-28 22:00:00',23), +(98,'0025_bbd','02','2006-12-26 18:00:00','2006-12-26 22:00:00',23) +--1. 查询出用户名为'张军'的上网卡的上网记录,要求显示卡号,用户名,机器编号、开始时间、结束时间,和消费金额,并按消费金额降序排列 +select R.cardId 显示卡号,userName 用户名,computerId 机器编号,beginTime 开始时间,endTime 结束时间,fee 消费金额 from tbl_record R inner join tbl_card C on R.cardId=C.cardId where userName='张军' order by fee desc +--2. 查询出 每台机器上的上网次数和消费的总金额 +select computerId,count (*) 上网次数, sum(fee) 消费的总金额 from tbl_record group by computerId +--3. 查询出所有已经使用过的上网卡的消费总金额 +select P.computerId , sum(fee)消费总金额 from tbl_computer P left join tbl_record R on P.computerId=R.computerId where onUse=1 GROUP BY P.computerId +--4. 查询出从未消费过的上网卡的卡号和用户名 +select R.cardId 卡号,T.userName 用户名 from tbl_record R right join tbl_computer C on R.computerId=C.computerId RIGHT join tbl_card T on R.cardId=T.cardId WHERE FEE IS NULL +--5. 将密码与用户名一样的上网卡信息查询出来 +select A.* from tbl_card A,tbl_card B where A.passWord =B.passWord AND A.userName=B.userName +--6. 查询出使用次数最多的机器号和使用次数 +select top 1 computerId ,sum (recordId)使用次数 from tbl_record group by computerId order by sum (recordId) desc +--7. 查询出卡号是以'ABC'结尾的卡号,用户名,上网的机器号和消费金额 +select distinct T.userName 用户名,R.computerId 上网的机器号,R.fee 消费金额 from tbl_record R inner join tbl_card T on R.cardId=T.cardId where T.cardId like '%ABC' +--8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select T.cardId 上网的卡号,T.userName 用户名,R.computerId 机器号,R.beginTime 开始时间,R.endTime 结束时间,R.fee 消费金额 from tbl_record R inner join tbl_card T on R.cardId=T.cardId WHERE DATENAME(DW,beginTime )='星期日' or DATEPART(DW,beginTime)=7 +--9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select R.cardID 卡号, userName 用户名, computerID 机器编号,beginTime 开始时间,endTime 结束时间, fee 消费金额 from +tbl_record R inner join tbl_card C on R.cardID=C.cardID +where (endtime-beginTime)>12 +--10. 查询出消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额>12 +select top 3 R.cardID 卡号, userName 用户名, computerID 机器编号,beginTime 开始时间,endTime 结束时间, fee 消费金额 from +tbl_record R inner join tbl_card C on R.cardID=C.cardID order by fee desc -- Gitee From dab32adc5c1c55fd2789ea6c24dec18a5c1cffdf Mon Sep 17 00:00:00 2001 From: lazy3698 <2820608163@qq.com> Date: Wed, 31 Mar 2021 22:38:16 +0800 Subject: [PATCH 120/144] =?UTF-8?q?sql=E4=BD=9C=E4=B8=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../1.sql" | 100 ++++++++++++++++++ 1 file changed, 100 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\347\216\213\350\277\234\346\226\271/1.sql" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\347\216\213\350\277\234\346\226\271/1.sql" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\347\216\213\350\277\234\346\226\271/1.sql" new file mode 100644 index 0000000..30f27b1 --- /dev/null +++ "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\347\216\213\350\277\234\346\226\271/1.sql" @@ -0,0 +1,100 @@ +use master +go +create database bmp +on +( + name='bmp', + filename='D:\bmp.mdf', + size=5mb, + maxsize=50mb, + filegrowth=10% +) +log on +( + name='bmp_log', + filename='D:\bmp_log.ldf', + size=5mb, + maxsize=50mb, + filegrowth=10% +) +use bmp +go +create table tbl_card +( + id varchar(20) primary key not null, + passWord varchar(20) not null, + balance int not null, + userName varchar(20) not null +) +create table tbl_computer +( + id varchar(20) primary key not null, + onUse char(1) check(onUse=0 or onUse=1) not null, + note int not null, +) +create table tbl_record +( + id int primary key , + cardld varchar(20) references tbl_card(id), + ComputerId varchar(20) references tbl_computer(id), + beginTime datetime not null, + endTime datetime not null, + fee money not null +) +insert into tbl_card values +('0023_ABC','555',98,'张军'), +('0025_bbd','ade',300,'朱俊'), +('0036_CCD','何柳',100,'何柳'), +('0045_YGR','0045_YGR',58,'证验'), +('0078_RJV','55885fg',600,'校庆'), +('0089_EDE','zhang',134,'张峻') +insert into tbl_computer values +('02',0,25555), +('03',1,55555), +('04',0,66666), +('05',1,88888), +('06',0,688878), +('B01',0,558558) +insert into tbl_record values +(23,'0078_RJV','B01','2007-07-15 19:00:00','2007-07-15 21:00:00',20), +(34,'0025_bbd','02','2006-12-25 18:00:00','2006-12-25 22:00:00',23), +(45,'0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), +(46,'0023_ABC','03','2006-12-22 15:26:00','2006-12-22 22:55:00',6), +(47,'0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), +(48,'0023_ABC','03','2007-01-06 15:26:00','2007-01-06 22:55:00',6), +(55,'0023_ABC','03','2006-07-21 15:26:00','2006-07-21 22:55:00',50), +(64,'0045_YGR','04','2006-12-24 18:00:00','2006-12-24 22:00:00',300), +(65,'0025_bbd','02','2006-12-28 18:00:00','2006-12-28 22:00:00',23), +(98,'0025_bbd','02','2006-12-26 18:00:00','2006-12-26 22:00:00',23) +select * from tbl_card +select * from tbl_computer +select * from tbl_record + +--1. 查询出用户名为'张军'的上网卡的上网记录,要求显示卡号,用户名,机器编号、开始时间、结束时间,和消费金额,并按消费金额降序排列 +select CD.id 卡号,userName 用户名,CR.id 机器编号,beginTime 开始时间,endTime 结束时间,fee 消费金额 +from tbl_card CD inner join tbl_record RD on CD.id = RD.cardld +inner join tbl_computer CR on RD.ComputerId=CR.id where userName='张军' order by fee desc +--2. 查询出每台机器上的上网次数和消费的总金额 +select ComputerId 机器编号,COUNT(*) 上网次数,SUM(fee) 消费总金额 from tbl_record group by ComputerId +--3. 查询出所有已经使用过的上网卡的消费总金额 +select RD.ComputerId 网卡编号, CR.onUse 已经使用,sum(fee) 消费总金额 +from tbl_record RD right join tbl_computer CR on RD.ComputerId=CR.id +where CR.onUse='1' group by RD.ComputerId,CR.onUse +--4. 查询出从未消费过的上网卡的卡号和用户名 +select c.ID,userName from tbl_card c left join tbl_record r on c.ID=r.cardld where Fee is null +--5. 将密码与用户名一样的上网卡信息查询出来 +select * from tbl_card t1 join tbl_card t2 on (t1.id = t2.id) and (t1.[passWord] = t2.userName) +--6. 查询出使用次数最多的机器号和使用次数 +select ComputerId, count(*) '使用次数' from tbl_record group by ComputerId +having count(*) = (select max(t.使用次数) from (select ComputerId, count(*) '使用次数' from tbl_record group by ComputerId) t) +--7. 查询出卡号是以'ABC'结尾的卡号,用户名,上网的机器号和消费金额 +select tc.id, tc.userName, tr.ComputerId, tr.fee from tbl_record tr join tbl_card tc on tr.cardld = tc.id where tr.cardld like '%ABC' +--8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select tc.id, tc.userName, tr.ComputerId, tr.beginTime, tr.endTime, tr.fee from tbl_record tr join tbl_card tc on tr.cardld = tc.id +where DATENAME(dw, tr.beginTime) in ('星期六','星期日') +--9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select c.ID 卡号,userName 用户名,o.ID 机器号,BeginTime 开始时间,EndTime 结束时间,Fee 消费金额 from tbl_record r inner join tbl_card c on r.cardld=c.ID +inner join tbl_computer o on r.ComputerId=o.ID where datediff(HH,BeginTime,EndTime)>12 +--10. 查询除消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select top 3 c.ID 卡号,userName 用户名,ComputerId 机器号,BeginTime 开始时间,EndTime 结束时间,fee 消费金额 +from tbl_card c inner join tbl_record r on c.ID=r.cardld order by Fee desc \ No newline at end of file -- Gitee From 3baec78ab43c7a01e686f13d7cf1558517e0ec82 Mon Sep 17 00:00:00 2001 From: swyuu <2190667145@qq.com> Date: Wed, 31 Mar 2021 22:44:07 +0800 Subject: [PATCH 121/144] =?UTF-8?q?=E6=96=B0=E5=BB=BA=20=E5=AD=99=E6=96=87?= =?UTF-8?q?=E8=A3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\345\255\231\346\226\207\350\243\225/.keep" | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\345\255\231\346\226\207\350\243\225/.keep" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\345\255\231\346\226\207\350\243\225/.keep" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\345\255\231\346\226\207\350\243\225/.keep" new file mode 100644 index 0000000..e69de29 -- Gitee From 06b29bb0e200b321c522eb57410e248f3ad13f0d Mon Sep 17 00:00:00 2001 From: swyuu <2190667145@qq.com> Date: Wed, 31 Mar 2021 22:44:33 +0800 Subject: [PATCH 122/144] =?UTF-8?q?=E5=AD=99=E6=96=87=E8=A3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SQLQuery4.sql" | 118 ++++++++++++++++++ 1 file changed, 118 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\345\255\231\346\226\207\350\243\225/SQLQuery4.sql" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\345\255\231\346\226\207\350\243\225/SQLQuery4.sql" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\345\255\231\346\226\207\350\243\225/SQLQuery4.sql" new file mode 100644 index 0000000..b779ec5 --- /dev/null +++ "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\345\255\231\346\226\207\350\243\225/SQLQuery4.sql" @@ -0,0 +1,118 @@ +use master +go + +create database Card +on +( + name = 'Card', + filename = 'E:\SQLwork\Card.mdf', + size = 10MB, + maxsize = 50MB, + filegrowth = 10% +) +log on +( + name = 'Card_log', + filename = 'E:\SQLwork\Card_log.ldf', + size = 10MB, + maxsize = 50MB, + filegrowth = 10% +) +go + +use Card +go + +create table tbl_card +( + ID char(30) primary key not null, + passWord varchar(50) not null, + balance money, + userName nvarchar(20) +) + +create table tbl_computer +( + ID char(30) primary key, + onUse char(1) check(onUse in(0,1)), + note nvarchar(10) +) + +create table tbl_record +( + RID int primary key , + CardID char(30) references tbl_Card(ID), + CID char(30) references tbl_Computer(ID), + BeginTime datetime, + Endtime datetime, + fee money +) +go + +insert into tbl_card values('0023_ABC','555',98,'张军'),('0025_bbd','abe',300,'朱骏'),('0036_CCD','何柳',100,'何柳'), +('0045_YGR','0045_YGR',58,'验证'),('0078_RJV','55885fg',600,'校庆'),('0089_EDE','zhang',134,'张峻') + +insert into tbl_computer values('02',0,25555),('03',1,55555),('04',0,66666),('05',1,88888),('06',0,688878),('B01',0,558558) + +insert into tbl_record values +(23,'0078_RJV','B01','2007-07-15 19:00:00','2007-07-15 21:00:00',20), +(34,'0025_bbd','02','2006-12-25 18:00:00','2006-12-25 22:00:00',23), +(45,'0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:25:00',50), +(46,'0023_ABC','03','2006-12-23 15:26:00','2006-12-22 22:55:00',6), +(47,'0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), +(48,'0023_ABC','03','2007-01-06 15:26:00','2007-01-06 22:55:00',6), +(55,'0023_ABC','03','2006-07-21 15:26:00','2006-07-21 22:55:00',20), +(64,'0045_YGR','04','2006-12-24 18:00:00','2006-12-24 22:00:00',3), +(65,'0025_bbd','02','2006-12-28 18:00:00','2006-12-28 22:00:00',23), +(98,'0025_bbd','02','2006-12-26 18:00:00','2006-12-26 22:00:00',23) +go + +select * from tbl_card +select * from tbl_computer +select * from tbl_record +--1. 查询出用户名为'张军'的上网卡的上网记录,要求显示卡号,用户名,机器编号、开始时间、结束时间,和消费金额,并按消费金额降序排列 + +select C.ID,userName,T.ID,beginTime,endTime,fee from tbl_card C inner join tbl_record R on C.ID = R.CardID inner join tbl_computer T on T.ID = R.CID where userName = '张军' order by fee DESC + +--2. 查询出每台机器上的上网次数和消费的总金额 + +select R.CID,COUNT(*)次数,SUM(fee)总金额 from tbl_computer T inner join tbl_record R on T.ID = R.CID group by R.CID + +--3. 查询出所有已经使用过的上网卡的消费总金额 + +select R.CID onUse,SUM(fee)总金额 from tbl_computer T inner join tbl_record R on T.ID = R.CID group by R.CID + +--4. 查询出从未消费过的上网卡的卡号和用户名 + +select C.ID,userName from tbl_card C left join tbl_record R on C.ID = R.CardID where fee is NULL + +--5. 将密码与用户名一样的上网卡信息查询出来 + +select A.* from tbl_Card A,TBL_Card B where A.PassWord=B.UserName + +--6. 查询出使用次数最多的机器号和使用次数 + +select top 1 cardid,count(*)使用次数 from tbl_record group by cardid + +--7. 查询出卡号是以'ABC'结尾的卡号,用户名,上网的机器号和消费金额 + +select userName,tbl_record.CID,fee from tbl_record inner join tbl_card on tbl_card.id=tbl_record.cardid +where cardid like '%ABC' + +--8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 + +select tbl_card.id,tbl_card.userName,tbl_record.CID,beginTime,endTime,tbl_record.fee from tbl_record +inner join tbl_card on tbl_card.id=tbl_record.cardid +where datename(DW,beginTime)='星期六' or datename(DW,beginTime)='星期日' + +--9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 + +select cardid,tbl_card.userName,ID,beginTime,endTime,fee from tbl_record inner join tbl_card on tbl_record.cardid=tbl_card.id +where DATEDIFF(hh,beginTime,endTime)>12 + +--10. 查询除消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 + +select top 3 R.cardID 卡号, userName 用户名, ID 机器编号,beginTime 开始时间,endTime 结束时间, fee 消费金额 from +tbl_record R inner join tbl_card C on R.cardID=C.ID order by fee DESC + + -- Gitee From 369a13d21eb2362b2e9365fdf1f55608c99d5e62 Mon Sep 17 00:00:00 2001 From: swyuu <2190667145@qq.com> Date: Wed, 31 Mar 2021 22:52:31 +0800 Subject: [PATCH 123/144] =?UTF-8?q?=E5=88=A0=E9=99=A4=E6=96=87=E4=BB=B6=20?= =?UTF-8?q?=E7=AC=AC=E5=8D=81=E4=B8=80=E6=AC=A1=E8=AF=BE=E4=BD=9C=E4=B8=9A?= =?UTF-8?q?/=E5=AD=99=E6=96=87=E8=A3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../.keep" | 0 .../3.30.sql" | 86 ------------------- 2 files changed, 86 deletions(-) delete mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\255\231\346\226\207\350\243\225/.keep" delete mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\255\231\346\226\207\350\243\225/3.30.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\255\231\346\226\207\350\243\225/.keep" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\255\231\346\226\207\350\243\225/.keep" deleted file mode 100644 index e69de29..0000000 diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\255\231\346\226\207\350\243\225/3.30.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\255\231\346\226\207\350\243\225/3.30.sql" deleted file mode 100644 index 4c83076..0000000 --- "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\255\231\346\226\207\350\243\225/3.30.sql" +++ /dev/null @@ -1,86 +0,0 @@ -use master -go -create database Student -on( - name = 'Student.mdf', - filename='D:\Student.mdf', - size=5, - maxsize=10, - filegrowth=15% -) -log on( - name = 'Student_log.ldf', - filename='D:\Student_log.ldf', - size=5, - maxsize=10, - filegrowth=15% -) -go -use Student -go -create table stuInfo -( - stuID int primary key identity(1,1), - stuName nvarchar(7) not null, - stuAge int not null, - stuSex nvarchar(1) not null, - time datetime -) -create table courseInfo -( - courseID int primary key identity(1,1), - courseName nvarchar(10) not null, - courseMarks nvarchar(5) -) -create table scoreInfo -( - scoreID int primary key identity(1,1), - stuID int references stuInfo(stuID), - courseID int references courseInfo(courseID), - score int not null -) -insert into stuInfo (stuName,stuAge,stuSex,time) values ('Tom',19,'1',null), -('Jack',20,'0',null),('Rose',21,'1',null),('Lulu',19,'1',null), -('Lili',21,'0',null),('abc',20,'1','2007-01-07 01:11:36.590') -insert into courseInfo (courseName,courseMarks) values ('JavaBase','4'), -('HTML','2'),('JavaScript','2'),('SqlBase','2') -insert into scoreInfo(stuID,courseID,score) -values('1','1','80'),('1','2','85'),('1','4','50'),('2','1','75'),('2','3','45'), -('2','4','75'),('3','1','45'),('4','1','95'),('4','2','75'),('4','3','90'),('4','4','95') ---有如图所示的三张表结构,学生信息表(stuInfo),课程信息表(courseInfo),分数信息表(scoreInfo) ---题目: -select * from stuInfo -select * from courseInfo -select * from scoreInfo - ---1.查询出每个学生所选修的课程的数量和所选修的课程的考试的平均分 -select stuName 学生 ,count(courseInfo.courseID) 课程数量,AVG(score) 平均分 from stuInfo inner join scoreInfo -on stuInfo.stuID=scoreInfo.stuID inner join courseInfo on courseInfo.courseID=scoreInfo.courseID group by - stuName ---2.查询出每门课程的选修的学生的个数和学生考试的总分 -select courseName 课程名称, COUNT(scoreInfo.courseID) 学生个数 ,sum(score) 总分 from stuInfo inner join scoreInfo -on stuInfo.stuID=scoreInfo.stuID inner join courseInfo on courseInfo.courseID=scoreInfo.courseID group by - scoreInfo.courseID,courseName ---3.查询出性别一样并且年龄一样的学生的信息 -select * from stuInfo a left join stuInfo b on a.stuSex=b.stuSex and a.stuAge=b.stuAge ---4.查询出学分一样的课程信息 -select * from courseInfo A inner join courseInfo B on A.courseMarks = B.courseMarks and A.courseID<>B.courseID ---5.查询出参加了考试的学生的学号,姓名,课程号和分数 -select stuInfo.stuID 学号,stuInfo.stuName 姓名,courseInfo.courseID 课程号, scoreInfo.score 分数 from stuInfo inner join scoreInfo -on stuInfo.stuID=scoreInfo.stuID inner join courseInfo on courseInfo.courseID=scoreInfo.courseID ---6.查询出参加了考试的学生的学号,课程号,课程名,课程学分和分数 -select stuInfo.stuID 学号,courseInfo.courseID 课程号,courseInfo.courseMarks 课程学分, scoreInfo.score 分数 from stuInfo inner join scoreInfo -on stuInfo.stuID=scoreInfo.stuID inner join courseInfo on courseInfo.courseID=scoreInfo.courseID ---7.查询出没有参加考试的学生的学号和姓名 -select stuInfo.stuID 学号,stuInfo.stuName 姓名 from stuInfo inner join scoreInfo -on stuInfo.stuID=scoreInfo.stuID inner join courseInfo on courseInfo.courseID=scoreInfo.courseID where -stuInfo.stuID is null and stuInfo.stuName is null ---8.查询出是周六周天来报到的学生 -select * from StuInfo where datename(weekday,time)='星期六' or datename(weekday,time)='星期日' ---9.查询出姓名中有字母a的学生的信息 -select * from StuInfo where stuName like '%a%' ---10.查询出选修了2门课程以上的并且考试平均分在70以上的学生的学号和考试平均分以及选修课程的数量 -select stuInfo.stuID 学号,avg(scoreInfo.score) 考试平均分,COUNT(courseInfo.courseID) 选修课程的数量 from stuInfo inner join scoreInfo -on stuInfo.stuID=scoreInfo.stuID inner join courseInfo on courseInfo.courseID=scoreInfo.courseID -GROUP BY stuInfo.stuID HAVING COUNT(courseInfo.courseID)>=2 -AND avg(scoreInfo.score)>=70 -- Gitee From 5a5375c392fc7f30923a3b0dbd2c6f8c1e6b074f Mon Sep 17 00:00:00 2001 From: swyuu <2190667145@qq.com> Date: Wed, 31 Mar 2021 22:55:06 +0800 Subject: [PATCH 124/144] =?UTF-8?q?=E6=96=B0=E5=BB=BA=20=E5=AD=99=E6=96=87?= =?UTF-8?q?=E8=A3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\345\255\231\346\226\207\350\243\225/.keep" | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\255\231\346\226\207\350\243\225/.keep" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\255\231\346\226\207\350\243\225/.keep" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\255\231\346\226\207\350\243\225/.keep" new file mode 100644 index 0000000..e69de29 -- Gitee From 68daf11abc8065723b2849c600ae4deccdef46d3 Mon Sep 17 00:00:00 2001 From: swyuu <2190667145@qq.com> Date: Wed, 31 Mar 2021 22:55:24 +0800 Subject: [PATCH 125/144] =?UTF-8?q?=E5=AD=99=E6=96=87=E8=A3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../3.30.sql" | 86 +++++++++++++++++++ 1 file changed, 86 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\255\231\346\226\207\350\243\225/3.30.sql" diff --git "a/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\255\231\346\226\207\350\243\225/3.30.sql" "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\255\231\346\226\207\350\243\225/3.30.sql" new file mode 100644 index 0000000..4c83076 --- /dev/null +++ "b/\347\254\254\345\215\201\344\270\200\346\254\241\350\257\276\344\275\234\344\270\232/\345\255\231\346\226\207\350\243\225/3.30.sql" @@ -0,0 +1,86 @@ +use master +go +create database Student +on( + name = 'Student.mdf', + filename='D:\Student.mdf', + size=5, + maxsize=10, + filegrowth=15% +) +log on( + name = 'Student_log.ldf', + filename='D:\Student_log.ldf', + size=5, + maxsize=10, + filegrowth=15% +) +go +use Student +go +create table stuInfo +( + stuID int primary key identity(1,1), + stuName nvarchar(7) not null, + stuAge int not null, + stuSex nvarchar(1) not null, + time datetime +) +create table courseInfo +( + courseID int primary key identity(1,1), + courseName nvarchar(10) not null, + courseMarks nvarchar(5) +) +create table scoreInfo +( + scoreID int primary key identity(1,1), + stuID int references stuInfo(stuID), + courseID int references courseInfo(courseID), + score int not null +) +insert into stuInfo (stuName,stuAge,stuSex,time) values ('Tom',19,'1',null), +('Jack',20,'0',null),('Rose',21,'1',null),('Lulu',19,'1',null), +('Lili',21,'0',null),('abc',20,'1','2007-01-07 01:11:36.590') +insert into courseInfo (courseName,courseMarks) values ('JavaBase','4'), +('HTML','2'),('JavaScript','2'),('SqlBase','2') +insert into scoreInfo(stuID,courseID,score) +values('1','1','80'),('1','2','85'),('1','4','50'),('2','1','75'),('2','3','45'), +('2','4','75'),('3','1','45'),('4','1','95'),('4','2','75'),('4','3','90'),('4','4','95') +--有如图所示的三张表结构,学生信息表(stuInfo),课程信息表(courseInfo),分数信息表(scoreInfo) +--题目: +select * from stuInfo +select * from courseInfo +select * from scoreInfo + +--1.查询出每个学生所选修的课程的数量和所选修的课程的考试的平均分 +select stuName 学生 ,count(courseInfo.courseID) 课程数量,AVG(score) 平均分 from stuInfo inner join scoreInfo +on stuInfo.stuID=scoreInfo.stuID inner join courseInfo on courseInfo.courseID=scoreInfo.courseID group by + stuName +--2.查询出每门课程的选修的学生的个数和学生考试的总分 +select courseName 课程名称, COUNT(scoreInfo.courseID) 学生个数 ,sum(score) 总分 from stuInfo inner join scoreInfo +on stuInfo.stuID=scoreInfo.stuID inner join courseInfo on courseInfo.courseID=scoreInfo.courseID group by + scoreInfo.courseID,courseName +--3.查询出性别一样并且年龄一样的学生的信息 +select * from stuInfo a left join stuInfo b on a.stuSex=b.stuSex and a.stuAge=b.stuAge +--4.查询出学分一样的课程信息 +select * from courseInfo A inner join courseInfo B on A.courseMarks = B.courseMarks and A.courseID<>B.courseID +--5.查询出参加了考试的学生的学号,姓名,课程号和分数 +select stuInfo.stuID 学号,stuInfo.stuName 姓名,courseInfo.courseID 课程号, scoreInfo.score 分数 from stuInfo inner join scoreInfo +on stuInfo.stuID=scoreInfo.stuID inner join courseInfo on courseInfo.courseID=scoreInfo.courseID +--6.查询出参加了考试的学生的学号,课程号,课程名,课程学分和分数 +select stuInfo.stuID 学号,courseInfo.courseID 课程号,courseInfo.courseMarks 课程学分, scoreInfo.score 分数 from stuInfo inner join scoreInfo +on stuInfo.stuID=scoreInfo.stuID inner join courseInfo on courseInfo.courseID=scoreInfo.courseID +--7.查询出没有参加考试的学生的学号和姓名 +select stuInfo.stuID 学号,stuInfo.stuName 姓名 from stuInfo inner join scoreInfo +on stuInfo.stuID=scoreInfo.stuID inner join courseInfo on courseInfo.courseID=scoreInfo.courseID where +stuInfo.stuID is null and stuInfo.stuName is null +--8.查询出是周六周天来报到的学生 +select * from StuInfo where datename(weekday,time)='星期六' or datename(weekday,time)='星期日' +--9.查询出姓名中有字母a的学生的信息 +select * from StuInfo where stuName like '%a%' +--10.查询出选修了2门课程以上的并且考试平均分在70以上的学生的学号和考试平均分以及选修课程的数量 +select stuInfo.stuID 学号,avg(scoreInfo.score) 考试平均分,COUNT(courseInfo.courseID) 选修课程的数量 from stuInfo inner join scoreInfo +on stuInfo.stuID=scoreInfo.stuID inner join courseInfo on courseInfo.courseID=scoreInfo.courseID +GROUP BY stuInfo.stuID HAVING COUNT(courseInfo.courseID)>=2 +AND avg(scoreInfo.score)>=70 -- Gitee From dc05cc42d3fcd876d96784a4ca1cc22c27d47bbc Mon Sep 17 00:00:00 2001 From: cyxer1c <1052035978@qq.com> Date: Wed, 31 Mar 2021 23:01:38 +0800 Subject: [PATCH 126/144] =?UTF-8?q?=E9=99=88=E5=AE=87=E7=BF=94?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SQLQuery10.sql" | 143 ++++++++++++++++++ 1 file changed, 143 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\351\231\210\345\256\207\347\277\224/SQLQuery10.sql" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\351\231\210\345\256\207\347\277\224/SQLQuery10.sql" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\351\231\210\345\256\207\347\277\224/SQLQuery10.sql" new file mode 100644 index 0000000..030df65 --- /dev/null +++ "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\351\231\210\345\256\207\347\277\224/SQLQuery10.sql" @@ -0,0 +1,143 @@ +use master +go + +create database InternetBar +on +( + name='InternetBar', + filename='D:\SqlWork\InternetBar\InternetBar.mdf', + size=5mb, + maxsize=20mb, + filegrowth=5mb +) +log on +( + name='InternetBar_log', + filename='D:\SqlWork\InternetBar\InternetBar.ldf', + size=5mb, + maxsize=20mb, + filegrowth=5mb +) + +use [InternetBar] +go + + +create table tbl_card +( + id varchar(10) primary key, + [passWord] nvarchar(20) check(len(passWord) between 2 and 20), + balance decimal(10,1), + userName nvarchar(20) +) +go + +create table tbl_computer +( + id varchar(10) primary key, + onUse int check(onUse in (0, 1)), + note text +) +go + +create table tbl_record +( + id varchar(10) primary key, + cardId varchar(10) references tbl_card(id), + ComputerId varchar(10) references tbl_computer(id), + beginTime smalldatetime, + endTime smalldatetime, + fee decimal(10,1) +) +go + + + +insert into tbl_card values +('0023_ABC', '555', 98, '张军'), +('0025_bbd', 'abe', 300, '朱俊'), +('0036_CCD', '何柳', 100, '何柳'), +('0045_YGR', '0045_YGR', 58, '证验'), +('0078_RJV', '55885fg', 600, '校庆'), +('0089_EDE', 'zhang', 134, '张峻') +go + +insert into tbl_computer values +('02', 0, '25555'), +('03', 1, '55555'), +('04', 0, '66666'), +('05', 1, '88888'), +('06', 0, '688878'), +('B01', 0, '558558') +go + +insert into tbl_record values +('23', '0078_RJV', 'B01', '2007-07-15 19:00:00', '2007-07-15 21:00:00', 20), +('34', '0025_bbd', '02', '2006-12-25 18:00:00', '2006-12-25 22:00:00', 23), +('45', '0023_ABC', '03', '2006-12-23 15:26:00', '2006-12-23 22:55:00', 50), +('46', '0023_ABC', '03', '2006-12-22 15:26:00', '2006-12-22 22:55:00', 6), +('47', '0023_ABC', '03', '2006-12-23 15:26:00', '2006-12-23 22:55:00', 50), +('48', '0023_ABC', '03', '2007-01-06 15:26:00', '2007-01-06 22:55:00', 6), +('55', '0023_ABC', '03', '2006-07-21 15:26:00', '2006-07-21 22:55:00', 50), +('64', '0045_YGR', '04', '2006-12-24 18:00:00', '2006-12-24 22:00:00', 30), +('65', '0025_bbd', '02', '2006-12-28 18:00:00', '2006-12-28 22:00:00', 23), +('98', '0025_bbd', '02', '2006-12-26 18:00:00', '2006-12-26 22:00:00', 23) +go + +select * from [dbo].[tbl_card] +select * from [dbo].[tbl_computer] +select * from [dbo].[tbl_record] + +--1. 查询出用户名为'张军'的上网卡的上网记录,要求显示卡号,用户名,机器编号、开始时间、结束时间,和消费金额,并按消费金额降序排列 + + select tc.id 卡号, userName 用户名, ComputerId 机器编号, beginTime 开放时间, endTime 结束时间, fee 消费金额 + from tbl_card tc join tbl_record tr on tc.id = tr.cardId where tc.userName = '张军' order by tr.fee desc + +--2. 查询出每台机器上的上网次数和消费的总金额 + + select ComputerId 电脑编号, count(*)上网次数, sum(fee) 消费金额 from tbl_record tb group by ComputerId + +--3. 查询出所有已经使用过的上网卡的消费总金额 + + select cardId 当次上网卡号, sum(fee) 消费总金额 from tbl_record tr group by cardId + +--4. 查询出从未消费过的上网卡的卡号和用户名 + + select tc.id 卡号, tc.userName 用户名 from tbl_card tc left join tbl_record tr on tr.cardId = tc.id where tr.id is null + +--5. 将密码与用户名一样的上网卡信息查询出来 + + select * from tbl_card tc1 join tbl_card tc2 on (tc1.id = tc1.[passWord]) and (tc2.id = tc2.[passWord]) + +--6. 查询出使用次数最多的机器号和使用次数 + + select ComputerId 机器编号, count(*) 使用次数 from tbl_record tr group by ComputerId + having count(*) = + (select max(t0.使用次数) from (select ComputerId, count(*) 使用次数 from tbl_record group by ComputerId) t0) + +--7. 查询出卡号是以'ABC'结尾的卡号,用户名,上网的机器号和消费金额 + + select tc.id, tc.userName, tr.ComputerId, tr.fee from tbl_record tr join tbl_card tc on tr.cardId = tc.id where tr.cardId like '%ABC' + +--8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 + + select tr.id, tc.userName, tr.ComputerId , tr.beginTime, tr.endTime, tr.fee from tbl_record tr join tbl_card tc on tr.cardId = tc.id + where datename(DW, tr.beginTime) in ( '星期日','星期六') + +--9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 + + select tr.id, tc.userName, tr.ComputerId , tr.beginTime, tr.endTime, tr.fee from tbl_record tr join tbl_card tc on tr.cardId = tc.id + where datediff(HH, tr.beginTime, tr.endTime) > 12 + +--10. 查询除消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 + + select c.id,userName,Computerid,beginTime,endTime,fee from tbl_card c inner join tbl_record r on c.id=r.cardid + where fee not in(select top 3 fee from tbl_record order by fee desc ) + + + select c.id,userName,Computerid,beginTime,endTime,fee from tbl_card c inner join tbl_record r on c.id=r.cardid + except + select top 3 c.id,userName,Computerid,beginTime,endTime,fee from tbl_card c inner join tbl_record r on c.id=r.cardid order by fee desc +select * from tbl_card +select * from tbl_computer +select * from tbl_record -- Gitee From 26447e80b3b29eb15f6571d020c33e1bcf3d62a5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=A5=BF=E6=B6=9B?= <2744453563@qq.com> Date: Wed, 31 Mar 2021 23:03:37 +0800 Subject: [PATCH 127/144] =?UTF-8?q?=E6=96=B0=E5=BB=BA=20=E8=94=A1=E8=A5=BF?= =?UTF-8?q?=E6=B6=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\350\224\241\350\245\277\346\266\233/.keep" | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\224\241\350\245\277\346\266\233/.keep" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\224\241\350\245\277\346\266\233/.keep" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\224\241\350\245\277\346\266\233/.keep" new file mode 100644 index 0000000..e69de29 -- Gitee From 639d7b1c7f81b86742c3926a20b3085540f7a287 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=A5=BF=E6=B6=9B?= <2744453563@qq.com> Date: Wed, 31 Mar 2021 23:04:05 +0800 Subject: [PATCH 128/144] =?UTF-8?q?=E8=94=A1=E8=A5=BF=E6=B6=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SQLQuery2.sql" | 105 ++++++++++++++++++ 1 file changed, 105 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\224\241\350\245\277\346\266\233/SQLQuery2.sql" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\224\241\350\245\277\346\266\233/SQLQuery2.sql" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\224\241\350\245\277\346\266\233/SQLQuery2.sql" new file mode 100644 index 0000000..95d3421 --- /dev/null +++ "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\224\241\350\245\277\346\266\233/SQLQuery2.sql" @@ -0,0 +1,105 @@ +use master + +create database LAN01 +on +( + name='LAN01', + filename='D:\LAN01.mdf', + size=5, + maxsize=15, + filegrowth=15 +) +log on +( + name='LAN_log01', + filename='D:\LAN01_log.ldf', + size=5, + maxsize=15, + filegrowth=15 +) +go +use LAN01 +go +create table tbl_card +( + id varchar(10) primary key, + [passWord] nvarchar(20) check(len(passWord) between 2 and 20), + balance decimal(10,1), + userName nvarchar(20) +) + +create table tbl_computer +( + id varchar(10) primary key, + onUse int check(onUse in (0, 1)), + note text +) + +create table tbl_record +( + id varchar(10) primary key, + cardId varchar(10) references tbl_card(id), + ComputerId varchar(10) references tbl_computer(id), + beginTime smalldatetime, + endTime smalldatetime, + fee decimal(10,1) +) + +insert into tbl_card values +('0023_ABC', '555', 98, '张军'), +('0025_bbd', 'abe', 300, '朱俊'), +('0036_CCD', '何柳', 100, '何柳'), +('0045_YGR', '0045_YGR', 58, '证验'), +('0078_RJV', '55885fg', 600, '校庆'), +('0089_EDE', 'zhang', 134, '张峻') + +insert into tbl_computer values +('02', 0, '25555'), +('03', 1, '55555'), +('04', 0, '66666'), +('05', 1, '88888'), +('06', 0, '688878'), +('B01', 0, '558558') + +insert into tbl_record values +('23', '0078_RJV', 'B01', '2007-07-15 19:00:00', '2007-07-15 21:00:00', 20), +('34', '0025_bbd', '02', '2006-12-25 18:00:00', '2006-12-25 22:00:00', 23), +('45', '0023_ABC', '03', '2006-12-23 15:26:00', '2006-12-23 22:55:00', 50), +('46', '0023_ABC', '03', '2006-12-22 15:26:00', '2006-12-22 22:55:00', 6), +('47', '0023_ABC', '03', '2006-12-23 15:26:00', '2006-12-23 22:55:00', 50), +('48', '0023_ABC', '03', '2007-01-06 15:26:00', '2007-01-06 22:55:00', 6), +('55', '0023_ABC', '03', '2006-07-21 15:26:00', '2006-07-21 22:55:00', 50), +('64', '0045_YGR', '04', '2006-12-24 18:00:00', '2006-12-24 22:00:00', 30), +('65', '0025_bbd', '02', '2006-12-28 18:00:00', '2006-12-28 22:00:00', 23), +('98', '0025_bbd', '02', '2006-12-26 18:00:00', '2006-12-26 22:00:00', 23) + +select * from tbl_card +select * from tbl_computer +select * from tbl_record +--1. 查询出用户名为'张军'的上网卡的上网记录,要求显示卡号,用户名,机器编号、开始时间、结束时间,和消费金额,并按消费金额降序排列 + select c.id 卡号,c.userName 用户名,ComputerId 机器编号,beginTime 开始时间,endTime 结束时间,fee 消费金额 from tbl_record D + join tbl_card C on D.cardId=C.id + where c.userName='张军' order by fee desc +--2. 查询出每台机器上的上网次数和消费的总金额 + select ComputerId,count(*)上网次数,SUM(fee)消费的总金额 from tbl_record + group by ComputerId +--3. 查询出所有已经使用过的上网卡的消费总金额 + select cardid 上网卡,sum(fee) 消费总金额 from tbl_record group by cardId +--4. 查询出从未消费过的上网卡的卡号和用户名 + select c.id 卡号,c.userName 用户名 from tbl_card C left join tbl_record R on C.id=R.cardId where R.fee is null +--5. 将密码与用户名一样的上网卡信息查询出来 + select * from tbl_card t1 join tbl_card t2 on (t1.id = t2.id) and (t1.[passWord] = t2.userName) +--6. 查询出使用次数最多的机器号和使用次数 + select ComputerId, count(*) '使用次数' from tbl_record group by ComputerId + having count(*) = (select max(t.使用次数) from (select ComputerId, count(*) '使用次数' from tbl_record group by ComputerId) t) +--7. 查询出卡号是以'ABC'结尾的卡号,用户名,上网的机器号和消费金额 + select tc.id, tc.userName, tr.ComputerId, tr.fee from tbl_record tr join tbl_card tc on tr.cardld = tc.id where tr.cardld like '%ABC' +--8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 + select tc.id, tc.userName, tr.ComputerId, tr.beginTime, tr.endTime, tr.fee from tbl_record tr join tbl_card tc on tr.cardld = tc.id + where DATENAME(dw, tr.beginTime) in ('星期六','星期日') +--9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 + select c.ID 卡号,userName 用户名,o.ID 机器号,BeginTime 开始时间,EndTime 结束时间,Fee 消费金额 from tbl_record r inner join tbl_card c on r.cardld=c.ID + inner join tbl_computer o on r.ComputerId=o.ID where datediff(HH,BeginTime,EndTime)>12 +--10. 查询除消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 + select top 3 c.ID 卡号,userName 用户名,ComputerId 机器号,BeginTime 开始时间,EndTime 结束时间,fee 消费金额 + from tbl_card c inner join tbl_record r on c.ID=r.cardld order by Fee desc \ No newline at end of file -- Gitee From 46df83eb98696117e1739e1e4bd54e0d3088feb8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=97=A7=E5=BF=B5=E4=BD=95=E6=8C=BD?= <2689023677@qq.com> Date: Wed, 31 Mar 2021 23:04:15 +0800 Subject: [PATCH 129/144] =?UTF-8?q?=E6=96=B0=E5=BB=BA=20=E8=A6=83=E7=A5=9A?= =?UTF-8?q?=E5=9B=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\350\246\203\347\245\232\345\233\275/.keep" | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\246\203\347\245\232\345\233\275/.keep" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\246\203\347\245\232\345\233\275/.keep" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\246\203\347\245\232\345\233\275/.keep" new file mode 100644 index 0000000..e69de29 -- Gitee From 4a3b687c0c10671f1a6e458bef91d686f1d47288 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=97=A7=E5=BF=B5=E4=BD=95=E6=8C=BD?= <2689023677@qq.com> Date: Wed, 31 Mar 2021 23:05:01 +0800 Subject: [PATCH 130/144] =?UTF-8?q?=E8=A6=83=E7=A5=9A=E5=9B=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SQLQuery1.sql" | 90 +++++++++++++++++++ 1 file changed, 90 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\246\203\347\245\232\345\233\275/SQLQuery1.sql" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\246\203\347\245\232\345\233\275/SQLQuery1.sql" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\246\203\347\245\232\345\233\275/SQLQuery1.sql" new file mode 100644 index 0000000..70730ee --- /dev/null +++ "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\246\203\347\245\232\345\233\275/SQLQuery1.sql" @@ -0,0 +1,90 @@ +use master +go +create database tbl +on +( +name='tbl', +filename='D:\tbl.mdf', +size=5, +maxsize=50, +filegrowth=10% +) +log on +( +name='tbl_log', +filename='D:\tbl_log.ldf', +size=5, +maxsize=50, +filegrowth=10% +) +go +use tbl +go +create table tbl_card--上网卡信息表 +( +id varchar(10) primary key ,--卡号 +passWord varchar(20) ,--密码 +balance int,--余额 +userName varchar(10) --上网卡所属的用户名 +) +create table tbl_computer--网吧机器说明表 +( +id varchar(10) primary key not null,--机器编号 +onUs int,--该机器是否正在使用 +note int --该机器的说明 +) +create table tbl_record --上网记录表 +( +id int primary key ,--记录编号 +cardId varchar(10) references tbl_card(id),--本次上网的卡号 +ComputerId varchar(10) references tbl_computer(id),--本次上网记录所使用的机器号 +beginTime datetime,--本次上网记录的开始时间 +endTime datetime,--本次上网记录的结束时间 +fee int--本次上网的费用 +) +go +insert into tbl_card(id,passWord,balance,userName) values +('0023_ABC','555','98','张军'),('0025_bbd','abe','300','朱俊'),('0036_CCD','何柳','100','何柳'), +('0045_YGR','0045_YGR','58','证验'),('0078_RJV','55885fg','600','校庆'),('0089_EDE','zhang','134','张峻') +insert into tbl_computer(id,onUs,note) values +('02','0','25555'),('03','1','55555'),('04','0','66666'),('05','1','88888'),('06','0','688878'),('B01','0','558558') +insert into tbl_record(id,cardId,ComputerId,beginTime,endTime,fee) values +('23','0078_RJV','B01','2007-07-15 19:00:00','2007-07-15 21:00:00','20'), +('34','0025_bbd','02','2006-12-25 18:00:00','2006-12-25 22:00:00','23'), +('45','0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00','50'), +('46','0023_ABC','03','2006-12-22 15:26:00','2006-12-22 22:55:00','6'), +('47','0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00','50'), +('48','0023_ABC','03','2007-01-06 15:26:00','2007-01-06 22:55:00','6'), +('55','0023_ABC','03','2006-07-21 15:26:00','2006-07-21 22:55:00','3'), +('64','0045_YGR','04','2006-12-24 18:00:00','2006-12-24 22:00:00','3'), +('65','0025_bbd','02','2006-12-28 18:00:00','2006-12-28 22:00:00','23'), +('98','0025_bbd','02','2006-12-26 18:00:00','2006-12-26 22:00:00','23') +select * from tbl_card +select * from tbl_computer +select * from tbl_record +--1. 查询出用户名为'张军'的上网卡的上网记录,要求显示卡号,用户名,机器编号、开始时间、结束时间,和消费金额,并按消费金额降序排列 +select C.id 卡号,userName 用户名,ComputerId 机器编号,beginTime 开始时间,endTime 结束时间,fee 消费金额 from tbl_card C inner join tbl_record R on C.id=R.cardId where userName='张军' order by fee desc +--2. 查询出每台机器上的上网次数和消费的总金额 +select ComputerId 机器,count(ComputerId)上网次数,sum(fee)消费的总金额 from tbl_record group by ComputerId +--3. 查询出所有已经使用过的上网卡的消费总金额 +select cardId 网卡,sum(fee)消费总金额 from tbl_record group by cardId +--4. 查询出从未消费过的上网卡的卡号和用户名 +select a.id 卡号,userName 用户名 from tbl_card a left join tbl_record b on a.id=b.cardId where fee is null +--5. 将密码与用户名一样的上网卡信息查询出来 +select a.* from tbl_card a inner join tbl_card b on a.id=b.id and a.passWord=b.userName +--6. 查询出使用次数最多的机器号和使用次数 +select top 1 ComputerId 机器号,count(ComputerId) 使用次数 from tbl_record group by ComputerId order by count(ComputerId) desc +--7. 查询出卡号是以'ABC'结尾的卡号,用户名,上网的机器号和消费金额 +select a.id,userName,ComputerId,fee from tbl_card a inner join tbl_record b on a.id=b.cardId +where a.id like'%ABC' +--8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select a.id 卡号,userName 用户名,ComputerId 机器号,beginTime 开始时间,endTime 结束时间,fee 消费金额 from tbl_card a inner join tbl_record b on a.id=b.cardId +where datename(weekday,beginTime)='星期六' or datename(weekday,beginTime)='星期日' +--9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select b.id 卡号, userName 用户名, computerID 机器编号,beginTime 开始时间,endTime 结束时间, fee 消费金额 from tbl_record a inner join tbl_card b on a.cardID=b.id +where DATEDIFF(HH,beginTime,endTime)>12 +--10. 查询除消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select * from tbl_record where id in (select top 3 id from tbl_record order by fee desc) + + + -- Gitee From cfcc05ffdd4d44e7c3d6f03941d6e1f43c3758e3 Mon Sep 17 00:00:00 2001 From: zhangmingxuanzhang <454673097@qq.com> Date: Wed, 31 Mar 2021 23:05:19 +0800 Subject: [PATCH 131/144] di12 --- .../SQLQuery1.sql" | 136 ++++++++++++++++++ 1 file changed, 136 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/SQLQuery1.sql" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/SQLQuery1.sql" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/SQLQuery1.sql" new file mode 100644 index 0000000..8ed22b9 --- /dev/null +++ "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/SQLQuery1.sql" @@ -0,0 +1,136 @@ +use master + +go + +create database tbl + +on +( +name ='tbl', +filename = 'D:\tbl.mdf', +size=5, +maxsize = 10, +filegrowth=10% + +) +log on +( +name ='tbl_log', +filename = 'D:\tbl', +size=5, +maxsize = 10, +filegrowth=10% + +) +go + +use tbl + +create table tbl_card +( +id nvarchar(10) primary key , +PassWord varchar(20) not null , +BaLance money , +UserName varchar(10) +) + +create table tbl_computer +( + +id nvarchar(10) primary key , +OnUse char(1) check(OnUse in(1,0)), +NOte text +) +create table tbl_record +( +id int primary key , +CardID nvarchar(10) references tbl_card(id), +ConputerID nvarchar(10) references tbl_computer(id), +BeginTime datetime, +EndTime datetime, +Fee money + +) +insert into tbl_card values +('0023_Abc','555','98','张军'), +('0025_bbd','abc','300','朱俊'), +('0036_CCD','何柳','100','何柳'), +('0045_YGR','0045_YGR','58','验证'), +('0078_RJV','55885fg','600','校庆'), +('0089_EDE','zhang','134','张峻') + +insert into tbl_computer values +('02','0','25555'), +('03','1','55555'), +('04','0','66666'), +('05','1','88888'), +('06','0','688878'), +('B01','0','558558') + + +insert into tbl_record values +('23','0078_RJV','B01','2007-07-15 19:00:00','2007-07-15 21:00:00','20'), +('34','0025_bbd','02','2006-12-25 18:00:00','2006-12-25 22:00:00','23'), +('45','0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00','50'), +('46','0023_ABC','03','2006-12-22 15:26:00','2006-12-22 22:55:00','6'), +('47','0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00','50'), +('48','0023_ABC','03','2007-01-06 15:26:00','2007-01-06 22:55:00','6'), +('55','0023_ABC','03','2006-07-21 15:26:00','2006-07-21 22:55:00','50'), +('64','0045_YGR','04','2006-12-24 18:00:00','2006-12-28 22:00:00','3'), +('65','0025_bbd','02','2006-12-28 18:00:00','2006-12-28 22:00:00','23'), +('98','0025_bbd','02','2006-12-26 18:00:00','2006-12-26 22:00:00','23') + + +--1. 查询出用户名为'张军' 的上网卡的 上网记录 ,要求显示卡号,用户名,机器编号、开始时间、结束时间,和消费金额,并按 消费金额 降序排列 +select* from tbl_card +select* from tbl_computer +select* from tbl_record +select* from tbl_card a inner join tbl_record r on a.id=r.CardID where UserName ='张军'order by Fee desc +--2. 查询出每台机器上的上网次数和消费的总金额 +select ConputerID 机器编号,COUNT(*) 上网次数,sum(fee) 总金额 from tbl_record group by ConputerID +--3. 查询出所有已经使用过的上网卡的消费总金额 + select sum(fee) 消费总金额 from tbl_card c right join tbl_record r on c.id = r.cardid +--4. 查询出从未消费过的上网卡的卡号和用户名 + select c.id,userName from tbl_record r right join tbl_card c on r.cardid = c.id where fee is NULL or fee=' ' +--5. 将密码与用户名一样的上网卡信息查询出来 + select A.* from tbl_card A inner join tbl_card B on A.passWord=B.userName +--6. 查询出使用次数最多的机器号和使用次数 + select top 1 ConputerID ,COUNT(*) from tbl_record group by ConputerID order by count(*) desc +--7. 查询出卡号是以'ABC'结尾的卡号,用户名,上网的机器号和消费金额 + select c.id,userName,ConputerID,fee from tbl_card c inner join tbl_record r on c.id =r.cardid where c.id like '%ABC' +--8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 + select c.id,userName,ConputerID,beginTime,endTime,fee from tbl_record r inner join tbl_card c on r.cardid = c.id + where datename(DW,beginTime)='星期六' or datename(DW,beginTime)='星期日' +--9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 + select c.id,userName,ConputerID,beginTime,endTime,fee from tbl_record r inner join tbl_card c on r.cardid = c.id + where DATEDIFF(HH,beginTime,endTime)>12 +--10. 查询除消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 + select c.id,userName,ConputerID,beginTime,endTime,fee from tbl_card c inner join tbl_record r on c.id=r.cardid + + + + + + + + + + + + + + + + + + + + + + + + + + + + -- Gitee From d3a20422aa6217803504009d514541595ee3b806 Mon Sep 17 00:00:00 2001 From: wx_54a5b54ed1 <2496363855@qq.com> Date: Wed, 31 Mar 2021 23:06:54 +0800 Subject: [PATCH 132/144] lsh --- .../3.31zuoye2.sql" | 118 ++++++++++++++++++ 1 file changed, 118 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\242\201\344\270\226\350\261\252/3.31zuoye2.sql" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\242\201\344\270\226\350\261\252/3.31zuoye2.sql" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\242\201\344\270\226\350\261\252/3.31zuoye2.sql" new file mode 100644 index 0000000..1259560 --- /dev/null +++ "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\346\242\201\344\270\226\350\261\252/3.31zuoye2.sql" @@ -0,0 +1,118 @@ +use master +go +create database wb +on +( + name ='wb.mdf', + filename='D:\wb.mdf', + size=5, + maxsize=10, + filegrowth=15% +) +log on +( + name ='wb_log.ldf', + filename='D:\wb_log.ldf', + size=5, + maxsize=10, + filegrowth=15% +) +go +use wb +go +create table tbl_card +( + id nvarchar(20) primary key, + passWord nvarchar(20) not null, + balance money, + userName nvarchar(10) +) +create table tbl_computer +( + id nvarchar(20) primary key, + onUse nvarchar(1) check((onUse) in ('0','1')), + note text +) +create table tbl_record +( + id nvarchar(20) primary key, + cardId nvarchar(20) references tbl_card(id), + ComputerId nvarchar(20) references tbl_computer(id), + beginTime datetime , + endTime datetime , + fee money +) +insert into tbl_card (id,passWord,balance,userName) values ('0023_ABC','555','98','张军'), +('0025_bbd','abe','300','朱俊'),('0036_CCD','何柳','100','何柳'),('0045_YGR','0045_YGR','58','证验'), +('0078_RJV','55885fg','600','校庆'),('0089_EDE','zhang','134','张峻') +go +insert into tbl_computer values +('02', '0', '25555'), +('03', '1', '55555'), +('04', '0', '66666'), +('05', '1', '88888'), +('06', '0', '688878'), +('B01', '0', '558558') +go + +insert into tbl_record values +('23', '0078_RJV', 'B01', '2007-07-15 19:00:00', '2007-07-15 21:00:00', 20), +('34', '0025_bbd', '02', '2006-12-25 18:00:00', '2006-12-25 22:00:00', 23), +('45', '0023_ABC', '03', '2006-12-23 15:26:00', '2006-12-23 22:55:00', 50), +('46', '0023_ABC', '03', '2006-12-22 15:26:00', '2006-12-22 22:55:00', 6), +('47', '0023_ABC', '03', '2006-12-23 15:26:00', '2006-12-23 22:55:00', 50), +('48', '0023_ABC', '03', '2007-01-06 15:26:00', '2007-01-06 22:55:00', 6), +('55', '0023_ABC', '03', '2006-07-21 15:26:00', '2006-07-21 22:55:00', 50), +('64', '0045_YGR', '04', '2006-12-24 18:00:00', '2006-12-24 22:00:00', 30), +('65', '0025_bbd', '02', '2006-12-28 18:00:00', '2006-12-28 22:00:00', 23), +('98', '0025_bbd', '02', '2006-12-26 18:00:00', '2006-12-26 22:00:00', 23) +go +select * from tbl_card --上网卡信息表(tbl_card) +select * from tbl_computer--网吧机器说明表(tbl_computer) +select * from tbl_record --上网记录表(tbl_record) +--1. 查询出用户名为'张军'的上网卡的上网记录, +--要求显示卡费金额,号,用户名,机器编号、开始时间、结束时间,和消并按消费金额降序排列 +select tbl_card.id 卡号,tbl_card.userName 用户名,tbl_record.ComputerId 机器编号, +tbl_record.beginTime 开始时间,tbl_record.endTime 结束时间 ,tbl_record.fee 消费金额 + from tbl_record inner join tbl_card on +tbl_record.cardId=tbl_card.id where tbl_card.userName='张军' order by tbl_record.fee desc +--2. 查询出每台机器上的上网次数和消费的总金额 +select tbl_computer.id 每台机器,count(*) 上网次数,sum(fee) 消费的总金额 from tbl_record inner join tbl_computer on +tbl_computer.id=tbl_record.ComputerId group by tbl_computer.id +--3. 查询出所有已经使用过的上网卡的消费总金额 +select tbl_record.cardId 上网卡, sum(fee) 消费总金额 from tbl_record inner join tbl_card on +tbl_record.cardId=tbl_card.id where tbl_record.fee is not null group by tbl_record.cardId +--4. 查询出从未消费过的上网卡的卡号和用户名 +select tbl_record.cardId 上网卡, tbl_card.id 卡号,tbl_card.userName 用户名 from tbl_record right join tbl_card on +tbl_record.cardId=tbl_card.id where tbl_record.fee is null group by tbl_record.cardId , tbl_card.id ,tbl_card.userName +--5. 将密码与用户名一样的上网卡信息查询出来 +select * from tbl_card where passWord =userName +--6. 查询出使用次数最多的机器号和使用次数 +select top 1 count(id)使用次数, ComputerId 机器号 from tbl_record + group by ComputerId order by count(id) desc +--7. 查询出卡号是以'ABC'结尾的卡号,用户名,上网的机器号和消费金额 +select tbl_card.id 卡号,tbl_card.userName 用户名,tbl_record.ComputerId 机器编号,tbl_record.fee 消费金额 + from tbl_record inner join tbl_card on tbl_record.cardId=tbl_card.id where tbl_card.id like '%ABC' +--8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select tbl_card.id 卡号,tbl_card.userName 用户名,tbl_record.ComputerId 机器编号, +tbl_record.beginTime 开始时间,tbl_record.endTime 结束时间, +tbl_record.fee 消费金额 + from tbl_record inner join tbl_card on tbl_record.cardId=tbl_card.id + where datename(DW,beginTime)='星期六' or datename(DW,beginTime)='星期日' +--9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号, +--开始时间、结束时间和消费金额 +select tbl_card.id 卡号,tbl_card.userName 用户名,tbl_record.ComputerId 机器编号, +tbl_record.beginTime 开始时间,tbl_record.endTime 结束时间, +tbl_record.fee 消费金额 from +tbl_record full join tbl_card on tbl_record.cardId=tbl_card.id + where datediff(HOUR,beginTime,endTime)>12 +--10. 查询出消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号, +--开始时间、结束时间和消费金额 +select top 3 tbl_card.id 卡号,tbl_card.userName 用户名,tbl_record.ComputerId 机器编号, +tbl_record.beginTime 开始时间,tbl_record.endTime 结束时间, +tbl_record.fee 消费金额 from +tbl_record inner join tbl_card on tbl_record.cardId=tbl_card.id +order by tbl_record.fee desc + + + -- Gitee From 74fea724cd06d89d09e2bcf824e8510ed99637a9 Mon Sep 17 00:00:00 2001 From: zhangmingxuanzhang <454673097@qq.com> Date: Wed, 31 Mar 2021 23:07:11 +0800 Subject: [PATCH 133/144] didi12 --- .../\345\274\240\351\223\255\350\275\251/SQLQuery1.sql" | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/SQLQuery1.sql" => "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\345\274\240\351\223\255\350\275\251/SQLQuery1.sql" (100%) diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/SQLQuery1.sql" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\345\274\240\351\223\255\350\275\251/SQLQuery1.sql" similarity index 100% rename from "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/SQLQuery1.sql" rename to "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\345\274\240\351\223\255\350\275\251/SQLQuery1.sql" -- Gitee From 7efe529489ed1db3dd0006feacbe88fd5ef7ca42 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A6=BE=E7=99=BD=E5=B0=8F=E5=BD=A1=E4=BA=BB=E5=8F=B3=60?= =?UTF-8?q?=E4=B8=87?= <2748168262@qq.com> Date: Wed, 31 Mar 2021 23:13:30 +0800 Subject: [PATCH 134/144] =?UTF-8?q?=E8=B0=AD=E8=BF=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...4\346\254\241\344\275\234\344\270\232.sql" | 106 ++++++++++++++++++ 1 file changed, 106 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\260\255\350\277\233/\347\254\254\345\215\201\344\272\214\346\254\241\344\275\234\344\270\232.sql" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\260\255\350\277\233/\347\254\254\345\215\201\344\272\214\346\254\241\344\275\234\344\270\232.sql" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\260\255\350\277\233/\347\254\254\345\215\201\344\272\214\346\254\241\344\275\234\344\270\232.sql" new file mode 100644 index 0000000..0430e66 --- /dev/null +++ "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\260\255\350\277\233/\347\254\254\345\215\201\344\272\214\346\254\241\344\275\234\344\270\232.sql" @@ -0,0 +1,106 @@ +use master +go +create database tbl +on +( +name='tbl', +filename='D:\tbl.mdf', +size=10mb, +maxsize=50mb, +filegrowth=10% +) +log +on +( +name='tbl_log', +filename='D:\tbl_log.ldf', +size=10mb, +maxsize=50mb, +filegrowth=10% +) +go +use tbl +go + +create table tbl_card +( +cardid nvarchar(20) primary key , +password nvarchar(20), +balance int, +username nvarchar(20) +) +create table tbl_computer +( +computerid varchar(20) primary key , +onuse char(2) check(onuse=1 or onuse=0), +note nvarchar(50) +) +create table tbl_record +( +recordid varchar(20) primary key, +cardid nvarchar(20) references tbl_card(cardid), +computerId varchar(20) references tbl_computer(computerid), +beginTime datetime , +endTime datetime , +fee int , +) + +insert into tbl_card values +('0023_ABC','555',98,'张军'),('0025_bbd','abe',300,'朱俊'),('0036_ccd','如柳',100,'如柳'), +('0045_YGR','0045_YGR',58,'证验'),('0078_RJV','55885fg',600,'校庆'),('0089_EDE','zhang',134,'张峻') + +insert into tbl_computer values +('02',0,25555),('03',1,55555),('04',0,66666),('05',1,88888),('06',0,688878),('b01',0,558558) + +insert into tbl_record values +(23,'0078_RJV','b01','2007-07-15 19:00:00','2007-07-15 21:00:00',20), +(34,'0025_bbd','02','2006-12-25 18:00:00','2006-12-25 22:00:00',30), +(45,'0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), +(46,'0023_ABC','03','2006-12-22 15:26:00','2006-12-22 22:55:00',6), +(47,'0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), +(48,'0023_ABC','03','2007-01-06 19:00:00','2007-07-15 21:00:00',20), +(55,'0078_RJV','b01','2006-12-23 15:26:00','2006-12-23 22:55:00',20), +(64,'0078_RJV','b01','2006-12-23 15:26:00','2006-12-23 22:55:00',50), +(65,'0025_bbd','02','2006-12-28 18:00:00','2006-12-28 22:00:00',23), +(98,'0025_bbd','02','2006-12-26 18:00:00','2006-12-26 22:00:00',23) + +select * from tbl_card +select * from tbl_computer + +select * from tbl_record + +--请完成以下题目: +--1. 查询出 用户名为'张军'的 上网卡的 上网记录,要求显示卡号,用户名,机器编号、开始时间、结束时间, 和消费金额, 并按消费金额降序排列 +select userName 卡号,recordid 用户名,ComputerId 机器编号,beginTime 开始时间,endTime 结束时间,fee 消费金额 from tbl_record R +inner join tbl_card C on R.cardid=C.cardid +where userName='张军' order by fee desc +--2. 查询出 每台机器上 的上网次数 和 消费的总金额 +select ComputerId,count(*)上网次数,sum(fee)总金额 from tbl_record group by ComputerId +--3. 查询出 所有已经使用过 的 上网卡 的 消费总金额 +select cardid,sum(fee)消费总金额 from tbl_record group by cardid +--4. 查询出从未消费过的上网卡的卡号和用户名 +select C.cardid 卡号,C.username 用户名 from tbl_card C left join tbl_record R on C.cardid=R.cardid where fee is null +--5. 将密码 与 用户名一样 的 上网卡信息 查询出来 +select * from tbl_card where passWord=userName +--6. 查询出使用次数最多的机器号和使用次数 + select ComputerId,count(ComputerId) from tbl_record group by ComputerId order by count(ComputerId) desc +--7. 查询出卡号是以'ABC'结尾的 卡号,用户名,上网的机器号和消费金额 +select C.cardid 卡号,C.username 用户名,R.computerId 机器号,R.fee 消费金额 from tbl_card C +inner join tbl_record R on C.cardid=R.cardid +where C.cardid like'%ABC' +--8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select C.cardid 卡号,C.username 用户名,R.computerId 机器号, R.beginTime 开始时间,R.endTime 结束时间,R.fee 消费金额 from tbl_record R +inner join tbl_card C on C.cardid=R.cardid +where datename(DW,beginTime)='星期六'or datename(DW,beginTime)='星期日' +--9. 查询成 一次上网时间超过12小时 的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select C.cardid 卡号,C.username 用户名,R.computerId 机器号, R.beginTime 开始时间,R.endTime 结束时间,R.fee 消费金额 from tbl_record R +inner join tbl_card C on C.cardid=R.cardid +where datediff(HH ,R.beginTime ,R.endTime )>12 +--10. 查询除消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select C.cardid 卡号,C.username 用户名,R.computerId 机器号, R.beginTime 开始时间,R.endTime 结束时间,R.fee 消费金额 from tbl_record R +inner join tbl_card C on C.cardid=R.cardid +where fee not in (select top 3 fee from tbl_record order by fee desc) order by fee desc + +--前三名 +select C.cardid 卡号,C.username 用户名,R.computerId 机器号, R.beginTime 开始时间,R.endTime 结束时间,R.fee 消费金额 from tbl_record R +inner join tbl_card C on C.cardid=R.cardid where fee in (select top 3 fee from tbl_record order by fee desc) order by fee desc \ No newline at end of file -- Gitee From 1ca0a0d5f84c83100cd71af380d4e128603cea70 Mon Sep 17 00:00:00 2001 From: nanyanbeimu <921737147@qq.com> Date: Wed, 31 Mar 2021 23:14:05 +0800 Subject: [PATCH 135/144] =?UTF-8?q?=E8=B5=B5=E5=AE=B6=E9=BD=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SQLQuery1.sql" | 109 ++++++++++++++++++ 1 file changed, 109 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\265\265\345\256\266\351\275\220/SQLQuery1.sql" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\265\265\345\256\266\351\275\220/SQLQuery1.sql" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\265\265\345\256\266\351\275\220/SQLQuery1.sql" new file mode 100644 index 0000000..a06ab01 --- /dev/null +++ "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\265\265\345\256\266\351\275\220/SQLQuery1.sql" @@ -0,0 +1,109 @@ +use master +go +create database TBL +on +( + name='TBL', + filename='D:\SQL\TBL.mdf', + size=5MB, + maxsize=20MB, + filegrowth=10% +) +log on +( + name='TBL_log', + filename='D:\SQL\TBL_log.ldf', + size=5MB, + maxsize=20MB, + filegrowth=10% +) +go + +use TBL +go +create table TBL_Card +( + CardID char(30) primary key not null, + PassWord varchar(50) not null, + Balance money , + UserName nvarchar(20) +) + +create table TBL_Computer +( + CID char(30) primary key , + OnUse char(1) check(OnUse in(1,0)), + note text +) + +create table TBL_Record +( + RID int primary key , + CardID char(30) references TBL_Card(CardID), + CID char(30) references TBL_Computer(CID), + BeginTime datetime, + Endtime datetime, + fee money +) +go + +insert into TBL_Card values +('0023_ABC','555',98,'张军'), +('0025_bbd','abe',300,'朱俊'), +('0036_CCD','何柳',100,'何柳'), +('0045_YGR','00445_YGR',58,'证验'), +('0078_RJV','55885fg',600,'校庆'), +('0089_EDE','zhang',134,'张俊') + +insert into TBL_Computer values +('02','0','25555'), +('03','1','55555'), +('04','0','66666'), +('05','1','88888'), +('06','0','688878'), +('B01','0','558558') + +insert into TBL_Record values +(23,'0078_RJV','B01','2007-07-15 19:00:00','2007-07-15 21:00:00',20), +(34,'0025_bbd','02','2006-12-25 18:00:00','2006-12-25 22:00:00',23), +(45,'0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:25:00',50), +(46,'0023_ABC','03','2006-12-23 15:26:00','2006-12-22 22:55:00',6), +(47,'0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), +(48,'0023_ABC','03','2007-01-06 15:26:00','2007-01-06 22:55:00',6), +(55,'0023_ABC','03','2006-07-21 15:26:00','2006-07-21 22:55:00',20), +(64,'0045_YGR','04','2006-12-24 18:00:00','2006-12-24 22:00:00',3), +(65,'0025_bbd','02','2006-12-28 18:00:00','2006-12-28 22:00:00',23), +(98,'0025_bbd','02','2006-12-26 18:00:00','2006-12-26 22:00:00',23) +go + +select * from TBL_Card +select * from TBL_Computer +select * from TBL_Record +--1. 查询出用户名为'张军'的上网卡的上网记录,要求显示卡号,用户名,机器编号、开始时间、结束时间,和消费金额,并按消费金额降序排列 +select C.CardID 卡号 , UserName 用户名 , CID 机器编号 , BeginTime 开始时间 , Endtime 结束时间 , fee 消费金额 from TBL_Record R inner join TBL_Card C on R.CardID=C.CardID where UserName='张军' order by fee DESC +--2. 查询出每台机器上的上网次数和消费的总金额 +select CID 机器编号 , COUNT(*) 上网次数 , SUM(fee) 总金额 from TBL_Record R group by CID +--3. 查询出所有已经使用过的上网卡的消费总金额 +select CardID 卡号 , SUM(fee) 总金额 from TBL_Record group by CardID +--4. 查询出从未消费过的上网卡的卡号和用户名 +select C.CardID 卡号 , UserName 用户名 , RID from TBL_Record R right join TBL_Card C on R.CardID=C.CardID group by C.CardID,UserName,RID having RID is null or RID='' +--5. 将密码与用户名一样的上网卡信息查询出来 +select A.* from TBL_Card A,TBL_Card B where A.PassWord=B.UserName +--6. 查询出使用次数最多的机器号和使用次数 +--select top 1 COUNT(*) from TBL_Record group by CID order by COUNT(*) DESC +select CID 机器号 , COUNT(*) 使用次数 from TBL_Record group by CID having COUNT(*)=(select top 1 COUNT(*) from TBL_Record group by CID order by COUNT(*) DESC) +--7. 查询出卡号是以'ABC'结尾的卡号,用户名,上网的机器号和消费金额 +select C.CardID 卡号 , UserName 用户名 , CID 机器编号 , fee 消费金额 from TBL_Record R inner join TBL_Card C on R.CardID=C.CardID where C.CardID like '%ABC' +--8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select C.CardID 卡号 , UserName 用户名 , CID 机器编号 , BeginTime 开始时间 , Endtime 结束时间 , fee 消费金额 from TBL_Record R inner join TBL_Card C on R.CardID=C.CardID where datename(weekday,BeginTime)='星期六' or datepart(weekday,BeginTime)=1 +--9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select C.CardID 卡号 , UserName 用户名 , CID 机器编号 , BeginTime 开始时间 , Endtime 结束时间 , fee 消费金额 from TBL_Record R inner join TBL_Card C on R.CardID=C.CardID where DATEDIFF(HH,BeginTime,Endtime)>12 +--10. 查询出消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select C.CardID 卡号 , UserName 用户名 , CID 机器编号 , BeginTime 开始时间 , Endtime 结束时间 , fee 消费金额 from TBL_Record R +inner join TBL_Card C on R.CardID=C.CardID +where RID not in (select top 3 RID from TBL_Record order by fee DESC) +group by C.CardID,UserName,CID,BeginTime,Endtime,fee +--11. 查询除消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select top 3 RID from TBL_Record order by fee DESC +select C.CardID 卡号 , UserName 用户名 , CID 机器编号 , BeginTime 开始时间 , Endtime 结束时间 , fee 消费金额 from TBL_Record R inner join TBL_Card C on R.CardID=C.CardID where RID in (select top 3 RID from TBL_Record order by fee DESC) +group by C.CardID , UserName , CID , BeginTime , Endtime , fee \ No newline at end of file -- Gitee From 1c096b0f87bd0db032b5136f8d61ec1d2da8ccd9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BE=90=E5=89=91=E9=98=B3?= <2998018776@qq.com> Date: Wed, 31 Mar 2021 23:15:58 +0800 Subject: [PATCH 136/144] =?UTF-8?q?=E6=96=B0=E5=BB=BA=20=E5=BE=90=E5=89=91?= =?UTF-8?q?=E9=98=B3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\345\276\220\345\211\221\351\230\263/.keep" | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\345\276\220\345\211\221\351\230\263/.keep" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\345\276\220\345\211\221\351\230\263/.keep" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\345\276\220\345\211\221\351\230\263/.keep" new file mode 100644 index 0000000..e69de29 -- Gitee From a9e882990ab32a32721762acee1d9f4d86247ded Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BE=90=E5=89=91=E9=98=B3?= <2998018776@qq.com> Date: Wed, 31 Mar 2021 23:16:20 +0800 Subject: [PATCH 137/144] =?UTF-8?q?=E5=BE=90=E5=89=91=E9=98=B3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../work2.sql" | 94 +++++++++++++++++++ 1 file changed, 94 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\345\276\220\345\211\221\351\230\263/work2.sql" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\345\276\220\345\211\221\351\230\263/work2.sql" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\345\276\220\345\211\221\351\230\263/work2.sql" new file mode 100644 index 0000000..e328f27 --- /dev/null +++ "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\345\276\220\345\211\221\351\230\263/work2.sql" @@ -0,0 +1,94 @@ +create database intent +on +( +name = 'intent', +filename = 'D:\intent.mdf', +size = 5, +maxsize = 10, +filegrowth = 10% +) +log on +( +name = 'intent_log', +filename = 'D:\intent_log.ldf', +size = 5, +maxsize = 10, +filegrowth = 10% +) +go +use intent +go +create table tbl_card +( +ID char(10) primary key, +passWord char(10), +balance int, +userName nvarchar(10) +) +create table tbl_computer +( +ID char(10) primary key, +OnUse int check(OnUse in(0,1)), +note int +) +create table tbl_record +( +ID int primary key, +CardID char(10) references tbl_card(ID), +ComputerID char(10) references tbl_computer(ID), +beginTime datetime, +endTime datetime, +Fee int +) +select * from tbl_card +select * from tbl_computer +select * from tbl_record + +--1. 查询出用户名为'张军'的上网卡的上网记录,要求显示卡号,用户名,机器编号、开始时间、结束时间,和消费金额,并按消费金额降序排列 +select tca.ID,userName,ComputerID,beginTime,endTime,Fee from tbl_record tr +inner join tbl_card tca on tr.CardID=tca.ID +where userName='张军' order by Fee desc + +--2. 查询出每台机器上的上网次数和消费的总金额 +select computerID,COUNT(*) 上网次数,SUM(Fee) 消费总金额 from tbl_record group by computerID + +--3. 查询出所有已经使用过的上网卡的消费总金额 +select CardID,SUM(Fee) 消费总金额 from tbl_record tr +left join tbl_card tca on tr.CardID=tca.ID group by CardID + +--4. 查询出从未消费过的上网卡的卡号和用户名 +select tca.ID,userName from tbl_record tr +right join tbl_card tca on tr.CardID=tca.ID +where CardID IS NULL group by tca.ID,userName + +--5. 将密码与用户名一样的上网卡信息查询出来 +select a.* from tbl_card a,tbl_card b where a.ID=b.passWord + +--6. 查询出使用次数最多的机器号和使用次数 +select ComputerID,COUNT(*) 使用次数 from tbl_record tr +inner join tbl_computer tco on tr.ComputerID=tco.ID +group by ComputerID +having COUNT(*)=(select top 1 COUNT(*) from tbl_record group by ComputerID order by COUNT(*) desc) + +--7. 查询出卡号是以'ABC'结尾的卡号,用户名,上网的机器号和消费金额 +select tca.ID,userName,ComputerID,Fee from tbl_card tca +inner join tbl_record tr on tca.ID=tr.CardID +where tca.ID like '%ABC' + +--8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select tr.CardID,userName,ComputerID,beginTime,endTime,Fee from tbl_record tr +inner join tbl_card tca on tr.CardID=tca.ID +where datename(DW,beginTime)='星期六' or datename(DW,beginTime)='星期日' + +--9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select tr.CardID,userName,ComputerID,beginTime,endTime,Fee from tbl_record tr +inner join tbl_card tca on tr.CardID=tca.ID +where DATEDIFF(HH,beginTime,endTime)>12 + +--10. 查询出消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select top 3 tr.CardID,userName,ComputerID,beginTime,endTime,Fee from tbl_record tr +inner join tbl_card tca on tr.CardID=tca.ID +order by Fee desc + + + -- Gitee From 120798cd291607b9d2376c439a66e591dcb9c426 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=87=8C=E6=98=82?= <8335240+dliyar@user.noreply.gitee.com> Date: Wed, 31 Mar 2021 23:19:14 +0800 Subject: [PATCH 138/144] =?UTF-8?q?=E8=BF=AA=E5=8A=9B=E4=BA=9A=E5=B0=94?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../1.txt" | 135 ++++++++++++++++++ 1 file changed, 135 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/1.txt" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/1.txt" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/1.txt" new file mode 100644 index 0000000..0b1355a --- /dev/null +++ "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/1.txt" @@ -0,0 +1,135 @@ +use master +go +create database tbl +on +( + name='tbl', + filename='D:\SQL\tbl.mdf', + size=5MB, + maxsize=20MB, + filegrowth=10% +) +log on +( + name='tbl_log', + filename='D:\SQL\tbl_log.ldf', + size=5MB, + maxsize=20MB, + filegrowth=10% +) +go + +use tbl +go + +create table tbl_card +( +id varchar(10) primary key, +passWord varchar(10), +balance varchar(5), +userName nvarchar(2) +) +go + +create table tbl_computer +( +id varchar(5) primary key, +onUse varchar(1) check(onUse=0 or onUse=1), +note varchar(10) +) +go + +create table tbl_record +( +id varchar(2) primary key, +cardId varchar(10) references tbl_card(id), +ComputerId varchar(5) references tbl_computer(id), +beginTime datetime, +endTime datetime, +fee money +) +go + +insert into tbl_card values +('0023_ABC','555',98,'寮犲啗'), +('0025_bbd','abe',300,'鏈变繆'), +('0036_CCD','浣曟煶',100,'浣曟煶'), +('0045_YGR','00445_YGR',58,'璇侀獙'), +('0078_RJV','55885fg',600,'鏍″簡'), +('0089_EDE','zhang',134,'寮犱繆') + +insert into tbl_computer values +('02','0','25555'), +('03','1','55555'), +('04','0','66666'), +('05','1','88888'), +('06','0','688878'), +('B01','0','558558') + +insert into tbl_record values +(23,'0078_RJV','B01','2007-07-15 19:00:00','2007-07-15 21:00:00',20), +(34,'0025_bbd','02','2006-12-25 18:00:00','2006-12-25 22:00:00',23), +(45,'0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:25:00',50), +(46,'0023_ABC','03','2006-12-22 15:26:00','2006-12-22 22:55:00',6), +(47,'0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), +(48,'0023_ABC','03','2007-01-06 15:26:00','2007-01-06 22:55:00',6), +(55,'0023_ABC','03','2006-07-21 15:26:00','2006-07-21 22:55:00',20), +(64,'0045_YGR','04','2006-12-24 18:00:00','2006-12-24 22:00:00',300), +(65,'0025_bbd','02','2006-12-28 18:00:00','2006-12-28 22:00:00',23), +(98,'0025_bbd','02','2006-12-26 18:00:00','2006-12-26 22:00:00',23) +go + +select * from tbl_card +select * from tbl_computer +select * from tbl_record +go + +--1. 鏌ヨ鍑虹敤鎴峰悕涓'寮犲啗'鐨勪笂缃戝崱鐨勪笂缃戣褰曪紝瑕佹眰鏄剧ず鍗″彿锛岀敤鎴峰悕锛屾満鍣ㄧ紪鍙枫佸紑濮嬫椂闂淬佺粨鏉熸椂闂达紝鍜屾秷璐归噾棰濓紝骞舵寜娑堣垂閲戦闄嶅簭鎺掑垪 +select cardId 鍗″彿,userName 鐢ㄦ埛鍚,ComputerId 鏈哄櫒缂栧彿,beginTime 寮濮嬫椂闂,endTime 缁撴潫鏃堕棿,fee 娑堣垂閲戦 +from tbl_record join tbl_card on tbl_record.cardId = tbl_card.id +where userName='寮犲啗' order by fee DESC + +--2. 鏌ヨ鍑烘瘡鍙版満鍣ㄤ笂鐨勪笂缃戞鏁板拰娑堣垂鐨勬婚噾棰 +select ComputerId 鏈哄櫒鍙,COUNT(ComputerId) 涓婄綉娆℃暟,SUM(fee) 娑堣垂鐨勬婚噾棰 from tbl_record group by ComputerId + +--3. 鏌ヨ鍑烘墍鏈夊凡缁忎娇鐢ㄨ繃鐨勪笂缃戝崱鐨勬秷璐规婚噾棰 +select cardId 鍗″彿,SUM(fee) 娑堣垂鎬婚噾棰 from tbl_record group by cardId + +--4. 鏌ヨ鍑轰粠鏈秷璐硅繃鐨勪笂缃戝崱鐨勫崱鍙峰拰鐢ㄦ埛鍚 +select tbl_card.id 鍗″彿,userName 鐢ㄦ埛鍚 from tbl_record right join tbl_card on tbl_record.cardId = tbl_card.id where tbl_record.id is null + +--5. 灏嗗瘑鐮佷笌鐢ㄦ埛鍚嶄竴鏍风殑涓婄綉鍗′俊鎭煡璇㈠嚭鏉 +select a.* from tbl_card a,tbl_card b where a.passWord=b.passWord and a.userName=b.userName and a.id<>b.id + +--6. 鏌ヨ鍑轰娇鐢ㄦ鏁版渶澶氱殑鏈哄櫒鍙峰拰浣跨敤娆℃暟 +select ComputerId 鏈哄櫒鍙,COUNT(ComputerId) 娆℃暟 from tbl_record group by ComputerId +having COUNT(ComputerId)=(select top 1 COUNT(ComputerId) from tbl_record group by ComputerId order by COUNT(ComputerId) DESC) + +--7. 鏌ヨ鍑哄崱鍙锋槸浠'ABC'缁撳熬鐨勫崱鍙凤紝鐢ㄦ埛鍚嶏紝涓婄綉鐨勬満鍣ㄥ彿鍜屾秷璐归噾棰 +select cardId 鍗″彿,userName 鐢ㄦ埛鍚,ComputerId 鏈哄櫒鍙,fee 娑堣垂閲戦 from tbl_record +join tbl_card on tbl_record.cardId = tbl_card.id where cardId like '%ABC' + +--8. 鏌ヨ鍑烘槸鍛ㄥ叚銆佸懆澶╀笂缃戠殑璁板綍锛岃姹傛樉绀轰笂缃戠殑鍗″彿锛岀敤鎴峰悕锛屾満鍣ㄥ彿锛屽紑濮嬫椂闂淬佺粨鏉熸椂闂村拰娑堣垂閲戦 +select cardId 鍗″彿,userName 鐢ㄦ埛鍚,ComputerId 鏈哄櫒缂栧彿,beginTime 寮濮嬫椂闂,endTime 缁撴潫鏃堕棿,fee 娑堣垂閲戦 +from tbl_record join tbl_card on tbl_record.cardId = tbl_card.id +where DATENAME(DW,beginTime)='鏄熸湡鍏' or DATENAME(DW,beginTime)='鏄熸湡鏃' + +--9. 鏌ヨ鎴愪竴娆′笂缃戞椂闂磋秴杩12灏忔椂鐨勭殑涓婄綉璁板綍锛岃姹傛樉绀轰笂缃戠殑鍗″彿锛岀敤鎴峰悕锛屾満鍣ㄥ彿锛屽紑濮嬫椂闂淬佺粨鏉熸椂闂村拰娑堣垂閲戦 +select cardId 鍗″彿,userName 鐢ㄦ埛鍚,ComputerId 鏈哄櫒缂栧彿,beginTime 寮濮嬫椂闂,endTime 缁撴潫鏃堕棿,fee 娑堣垂閲戦 +from tbl_record join tbl_card on tbl_record.cardId = tbl_card.id +where datediff(HH,BeginTime,Endtime)>12 + +--10. 鏌ヨ鍑烘秷璐归噾棰濇帓鍒楀墠涓夊悕(鏈楂)鐨勪笂缃戣褰曪紝瑕佹眰鏄剧ず涓婄綉鐨勫崱鍙凤紝鐢ㄦ埛鍚嶏紝鏈哄櫒鍙凤紝寮濮嬫椂闂淬佺粨鏉熸椂闂村拰娑堣垂閲戦 +select cardId 鍗″彿,userName 鐢ㄦ埛鍚,ComputerId 鏈哄櫒缂栧彿,beginTime 寮濮嬫椂闂,endTime 缁撴潫鏃堕棿,fee 娑堣垂閲戦 +from tbl_record join tbl_card on tbl_record.cardId = tbl_card.id +where fee in (select top 3 fee from tbl_record order by fee DESC) +order by fee DESC + +--11. 鏌ヨ闄ゆ秷璐归噾棰濇帓鍒楀墠涓夊悕(鏈楂)鐨勪笂缃戣褰曪紝瑕佹眰鏄剧ず涓婄綉鐨勫崱鍙凤紝鐢ㄦ埛鍚嶏紝鏈哄櫒鍙凤紝寮濮嬫椂闂淬佺粨鏉熸椂闂村拰娑堣垂閲戦 +select cardId 鍗″彿,userName 鐢ㄦ埛鍚,ComputerId 鏈哄櫒缂栧彿,beginTime 寮濮嬫椂闂,endTime 缁撴潫鏃堕棿,fee 娑堣垂閲戦 +from tbl_record join tbl_card on tbl_record.cardId = tbl_card.id +where fee not in (select top 3 fee from tbl_record order by fee DESC) +order by fee DESC + +select * from tbl_record order by fee DESC +璇勮 ( 0 ) \ No newline at end of file -- Gitee From 34bfa66193d23150e2db887e3071e310c6921c94 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=BB=83=E6=96=87=E6=B5=A9?= <1208984334@qq.com> Date: Wed, 31 Mar 2021 23:41:29 +0800 Subject: [PATCH 139/144] zy --- .../SQLQuery5.sql" | 103 ++++++++++++++++++ 1 file changed, 103 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\347\273\203\346\226\207\346\265\251/SQLQuery5.sql" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\347\273\203\346\226\207\346\265\251/SQLQuery5.sql" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\347\273\203\346\226\207\346\265\251/SQLQuery5.sql" new file mode 100644 index 0000000..679639f --- /dev/null +++ "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\347\273\203\346\226\207\346\265\251/SQLQuery5.sql" @@ -0,0 +1,103 @@ +use master +go + +create database TBL +on +( +name='TBL', +filename='D:\TBL.mdf', +size=5MB, +MAXsize=50MB, +filegrowth=50% +) + +log on +( +name='TBL_log', +filename='D:\TBL_log.ldf', +size=5MB, +maxsize=50MB, +filegrowth=50% +) +go + +use TBL +go + +create table Card +( + ID nvarchar(20) primary key , + PassWord nvarchar(10), + Balance int , + UserName nvarchar(10) +) + +create table Computer +( + ID nvarchar(20) primary key, + OnUse char(1) check(OnUse in (1,0)), + note text , +) + +create table Record +( + ID int primary key , + Cardld nvarchar(20) references Card(ID), + ComputerID nvarchar(20) references Computer(ID), + BeginTime datetime, + Endtime datetime, + Fee int +) + +insert into Card values +('0023_ABC','555',98,'张军'),('0025_bbd','abe',300,'朱俊'),('036__CCD','何柳',100,'何柳'), +('0045_YGR','0045_YGR',58,'证验'),('0078_RJV','55885fg',600,'校庆'),('0089','zhang',134,'张峻') + + +insert into Computer values +('02','0','25555'),('03','1','55555'),('04','0','66666'),('05','1','88888'), +('06','0','688878'),('B01','0','558558') + +insert into Record values +(23,'0078_RJV','B01','2007-07-15 19:00:00','2007-07-15 21:00:00',20), +(34,'0025_bbd','02','2006-12-25 18:00:00','2006-12-25 22:00:00',23), +(45,'0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), +(46,'0023_ABC','03','2006-12-22 15:26:00','2006-12-22 22:55:0',6), +(47,'0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), +(48,'0023_ABC','03','2007-1-06 15:26:00','2007-1-06 22:55:0',6), +(55,'0023_ABC','03','2006-07-21 15:26:00','2006-07-21 22:55:00',50), +(64,'0045_YGR','04','2006-12-24 18:00:00','2006-12-24 22:00:00',3), +(65,'0025_bbd','02','2006-12-28 18:00:00','006-12-28 22:00:00',23), +(98,'0025_bbd','02','2006-12-26 18:00:00','2006-12-26 22:00:00',23) + + +select * from Card +select * from Computer +select * from Record +--1. 查询出用户名为'张军'的上网卡的上网记录,要求显示卡号,用户名,机器编号、开始时间、结束时间,和消费金额,并按消费金额降序排列 + Select R.Cardld 卡号,C.UserName 用户名,R.ComputerID 机器编号,R.BeginTime 开始时间,R.Endtime 结束时间,R.Fee 消费金额 from Record R + inner join Card C on R.Cardld=C.ID where UserName='张军' order by Fee desc +--2. 查询出每台机器上的上网次数和消费的总金额 + Select ComputerID,count(ComputerID) 上网次数,sum(Fee) 总金额 from Record group by ComputerID +--3. 查询出所有已经使用过的上网卡的消费总金额 + Select Cardld 卡号,Sum(Fee) 消费总金额 from Record group by Cardld +--4. 查询出从未消费过的上网卡的卡号和用户名 + Select C.ID 卡号,C.UserName 用户名 from Record R right join Card C on R.Cardld=C.ID where fee is null or Fee='' + +--5. 将密码与用户名一样的上网卡信息查询出来 + Select A.* from Card A,Card B where A.ID=B.PassWord +--6. 查询出使用次数最多的机器号和使用次数 + Select C.ID 机器号,count(Cardld) 使用次数 from Record R inner join Computer C on R.ComputerID=C.ID group by C.ID + having C.ID=(Select top 1 ComputerID from Record group by ComputerID order by count(Cardld) desc ) +--7. 查询出卡号是以'ABC'结尾的用户卡号,名,上网的机器号和消费金额 + Select C.ID 用户卡号,C.UserName 用户名,R.ComputerID 机器号, sum(Fee) 消费总金额 from Card C inner join Record R on C.ID=R.Cardld where C.ID like '%ABC' group by C.ID,C.UserName,R.ComputerID +--8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 + Select C.ID 卡号,C.UserName 用户名,R.ComputerID 机器号,R.BeginTime 开始时间,R.Endtime 结束时间,fee 消费金额 from Record R + inner join Card C on R.Cardld=C.ID where datename(DW,R.BeginTime)='星期六' or datename(DW,R.BeginTime)='星期日' +--9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 + select R.Cardld 卡号,C.UserName 用户名,R.ComputerID 机器号, R.BeginTime 开始时间,R.Endtime 结束时间,fee 消费金额 from Record R + inner join Card C on R.Cardld=C.ID where datediff(hh,BeginTime,EndTime)>12 + --10. 查询除消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 + Select top 3 R.Cardld 卡号,C.UserName 用户名,R.ComputerID 机器号, R.BeginTime 开始时间, R.Endtime 结束时间, fee 消费金额 from Record R + inner join Card C on R.Cardld=C.ID order by Fee desc + -- Gitee From af8e42cab05d30514fdfe453718df72eca3dea78 Mon Sep 17 00:00:00 2001 From: qingliuma <2824359150@qq.com> Date: Thu, 1 Apr 2021 07:34:52 +0800 Subject: [PATCH 140/144] =?UTF-8?q?=E6=96=B0=E5=BB=BA=20=E7=A8=8B=E6=96=87?= =?UTF-8?q?=E5=90=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\347\250\213\346\226\207\345\220\233/.keep" | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\347\250\213\346\226\207\345\220\233/.keep" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\347\250\213\346\226\207\345\220\233/.keep" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\347\250\213\346\226\207\345\220\233/.keep" new file mode 100644 index 0000000..e69de29 -- Gitee From a7652e5ab53c8517c0c395baee03a01cd09379eb Mon Sep 17 00:00:00 2001 From: qingliuma <2824359150@qq.com> Date: Thu, 1 Apr 2021 07:35:04 +0800 Subject: [PATCH 141/144] 12 --- .../SQLQusry2.sql" | 85 +++++++++++++++++++ 1 file changed, 85 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\347\250\213\346\226\207\345\220\233/SQLQusry2.sql" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\347\250\213\346\226\207\345\220\233/SQLQusry2.sql" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\347\250\213\346\226\207\345\220\233/SQLQusry2.sql" new file mode 100644 index 0000000..8b5ce95 --- /dev/null +++ "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\347\250\213\346\226\207\345\220\233/SQLQusry2.sql" @@ -0,0 +1,85 @@ +use master +go + +create database TBL +go + +use TBL +go + +create table Card +( + ID nvarchar(20) primary key , + PassWord nvarchar(10), + Balance int , + UserName nvarchar(10) +) + +create table Computer +( + ID nvarchar(20) primary key, + OnUse char(1) check(OnUse in (1,0)), + note text , +) + +create table Record +( + ID int primary key , + Cardld nvarchar(20) references Card(ID), + ComputerID nvarchar(20) references Computer(ID), + BeginTime datetime, + Endtime datetime, + Fee int +) + +insert into Card values +('0023_ABC','555',98,'寮犲啗'),('0025_bbd','abe',300,'鏈变繆'),('036__CCD','浣曟煶',100,'浣曟煶'), +('0045_YGR','0045_YGR',58,'璇侀獙'),('0078_RJV','55885fg',600,'鏍″簡'),('0089','zhang',134,'寮犲郴') + + +insert into Computer values +('02','0','25555'),('03','1','55555'),('04','0','66666'),('05','1','88888'), +('06','0','688878'),('B01','0','558558') + +insert into Record values +(23,'0078_RJV','B01','2007-07-15 19:00:00','2007-07-15 21:00:00',20), +(34,'0025_bbd','02','2006-12-25 18:00:00','2006-12-25 22:00:00',23), +(45,'0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), +(46,'0023_ABC','03','2006-12-22 15:26:00','2006-12-22 22:55:0',6), +(47,'0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), +(48,'0023_ABC','03','2007-1-06 15:26:00','2007-1-06 22:55:0',6), +(55,'0023_ABC','03','2006-07-21 15:26:00','2006-07-21 22:55:00',50), +(64,'0045_YGR','04','2006-12-24 18:00:00','2006-12-24 22:00:00',3), +(65,'0025_bbd','02','2006-12-28 18:00:00','006-12-28 22:00:00',23), +(98,'0025_bbd','02','2006-12-26 18:00:00','2006-12-26 22:00:00',23) + + +select * from Card +select * from Computer +select * from Record +--1. 鏌ヨ鍑虹敤鎴峰悕涓'寮犲啗'鐨勪笂缃戝崱鐨勪笂缃戣褰曪紝瑕佹眰鏄剧ず鍗″彿锛岀敤鎴峰悕锛屾満鍣ㄧ紪鍙枫佸紑濮嬫椂闂淬佺粨鏉熸椂闂达紝鍜屾秷璐归噾棰濓紝骞舵寜娑堣垂閲戦闄嶅簭鎺掑垪 + Select R.Cardld 鍗″彿,C.UserName 鐢ㄦ埛鍚,R.ComputerID 鏈哄櫒缂栧彿,R.BeginTime 寮濮嬫椂闂,R.Endtime 缁撴潫鏃堕棿,R.Fee 娑堣垂閲戦 from Record R + inner join Card C on R.Cardld=C.ID where UserName='寮犲啗' order by Fee desc +--2. 鏌ヨ鍑烘瘡鍙版満鍣ㄤ笂鐨勪笂缃戞鏁板拰娑堣垂鐨勬婚噾棰 + Select ComputerID,count(ComputerID) 涓婄綉娆℃暟,sum(Fee) 鎬婚噾棰 from Record group by ComputerID +--3. 鏌ヨ鍑烘墍鏈夊凡缁忎娇鐢ㄨ繃鐨勪笂缃戝崱鐨勬秷璐规婚噾棰 + Select Cardld 鍗″彿,Sum(Fee) 娑堣垂鎬婚噾棰 from Record group by Cardld +--4. 鏌ヨ鍑轰粠鏈秷璐硅繃鐨勪笂缃戝崱鐨勫崱鍙峰拰鐢ㄦ埛鍚 + Select C.ID 鍗″彿,C.UserName 鐢ㄦ埛鍚 from Record R right join Card C on R.Cardld=C.ID where fee is null or Fee='' + +--5. 灏嗗瘑鐮佷笌鐢ㄦ埛鍚嶄竴鏍风殑涓婄綉鍗′俊鎭煡璇㈠嚭鏉 + Select A.* from Card A,Card B where A.ID=B.PassWord +--6. 鏌ヨ鍑轰娇鐢ㄦ鏁版渶澶氱殑鏈哄櫒鍙峰拰浣跨敤娆℃暟 + Select C.ID 鏈哄櫒鍙,count(Cardld) 浣跨敤娆℃暟 from Record R inner join Computer C on R.ComputerID=C.ID group by C.ID + having C.ID=(Select top 1 ComputerID from Record group by ComputerID order by count(Cardld) desc ) +--7. 鏌ヨ鍑哄崱鍙锋槸浠'ABC'缁撳熬鐨勭敤鎴峰崱鍙凤紝鍚嶏紝涓婄綉鐨勬満鍣ㄥ彿鍜屾秷璐归噾棰 + Select C.ID 鐢ㄦ埛鍗″彿,C.UserName 鐢ㄦ埛鍚,R.ComputerID 鏈哄櫒鍙, sum(Fee) 娑堣垂鎬婚噾棰 from Card C inner join Record R on C.ID=R.Cardld where C.ID like '%ABC' group by C.ID,C.UserName,R.ComputerID +--8. 鏌ヨ鍑烘槸鍛ㄥ叚銆佸懆澶╀笂缃戠殑璁板綍锛岃姹傛樉绀轰笂缃戠殑鍗″彿锛岀敤鎴峰悕锛屾満鍣ㄥ彿锛屽紑濮嬫椂闂淬佺粨鏉熸椂闂村拰娑堣垂閲戦 + Select C.ID 鍗″彿,C.UserName 鐢ㄦ埛鍚,R.ComputerID 鏈哄櫒鍙,R.BeginTime 寮濮嬫椂闂,R.Endtime 缁撴潫鏃堕棿,fee 娑堣垂閲戦 from Record R + inner join Card C on R.Cardld=C.ID where datename(DW,R.BeginTime)='鏄熸湡鍏' or datename(DW,R.BeginTime)='鏄熸湡鏃' +--9. 鏌ヨ鎴愪竴娆′笂缃戞椂闂磋秴杩12灏忔椂鐨勭殑涓婄綉璁板綍锛岃姹傛樉绀轰笂缃戠殑鍗″彿锛岀敤鎴峰悕锛屾満鍣ㄥ彿锛屽紑濮嬫椂闂淬佺粨鏉熸椂闂村拰娑堣垂閲戦 + select R.Cardld 鍗″彿,C.UserName 鐢ㄦ埛鍚,R.ComputerID 鏈哄櫒鍙, R.BeginTime 寮濮嬫椂闂,R.Endtime 缁撴潫鏃堕棿,fee 娑堣垂閲戦 from Record R + inner join Card C on R.Cardld=C.ID where datediff(hh,BeginTime,EndTime)>12 + --10. 鏌ヨ闄ゆ秷璐归噾棰濇帓鍒楀墠涓夊悕(鏈楂)鐨勪笂缃戣褰曪紝瑕佹眰鏄剧ず涓婄綉鐨勫崱鍙凤紝鐢ㄦ埛鍚嶏紝鏈哄櫒鍙凤紝寮濮嬫椂闂淬佺粨鏉熸椂闂村拰娑堣垂閲戦 + Select top 3 R.Cardld 鍗″彿,C.UserName 鐢ㄦ埛鍚,R.ComputerID 鏈哄櫒鍙, R.BeginTime 寮濮嬫椂闂, R.Endtime 缁撴潫鏃堕棿, fee 娑堣垂閲戦 from Record R + inner join Card C on R.Cardld=C.ID order by Fee desc \ No newline at end of file -- Gitee From b17d95d21f7dbd6f022fc63c3c678ae1509bd369 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=98=8E=E6=9C=88?= <8335338+wx_15377931643ace@user.noreply.gitee.com> Date: Thu, 1 Apr 2021 07:51:15 +0800 Subject: [PATCH 142/144] SQL --- .../SQLQuery5.sql" | 103 ++++++++++++++++++ 1 file changed, 103 insertions(+) create mode 100644 "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\351\230\256\345\273\272\351\234\226/SQLQuery5.sql" diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\351\230\256\345\273\272\351\234\226/SQLQuery5.sql" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\351\230\256\345\273\272\351\234\226/SQLQuery5.sql" new file mode 100644 index 0000000..679639f --- /dev/null +++ "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\351\230\256\345\273\272\351\234\226/SQLQuery5.sql" @@ -0,0 +1,103 @@ +use master +go + +create database TBL +on +( +name='TBL', +filename='D:\TBL.mdf', +size=5MB, +MAXsize=50MB, +filegrowth=50% +) + +log on +( +name='TBL_log', +filename='D:\TBL_log.ldf', +size=5MB, +maxsize=50MB, +filegrowth=50% +) +go + +use TBL +go + +create table Card +( + ID nvarchar(20) primary key , + PassWord nvarchar(10), + Balance int , + UserName nvarchar(10) +) + +create table Computer +( + ID nvarchar(20) primary key, + OnUse char(1) check(OnUse in (1,0)), + note text , +) + +create table Record +( + ID int primary key , + Cardld nvarchar(20) references Card(ID), + ComputerID nvarchar(20) references Computer(ID), + BeginTime datetime, + Endtime datetime, + Fee int +) + +insert into Card values +('0023_ABC','555',98,'张军'),('0025_bbd','abe',300,'朱俊'),('036__CCD','何柳',100,'何柳'), +('0045_YGR','0045_YGR',58,'证验'),('0078_RJV','55885fg',600,'校庆'),('0089','zhang',134,'张峻') + + +insert into Computer values +('02','0','25555'),('03','1','55555'),('04','0','66666'),('05','1','88888'), +('06','0','688878'),('B01','0','558558') + +insert into Record values +(23,'0078_RJV','B01','2007-07-15 19:00:00','2007-07-15 21:00:00',20), +(34,'0025_bbd','02','2006-12-25 18:00:00','2006-12-25 22:00:00',23), +(45,'0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), +(46,'0023_ABC','03','2006-12-22 15:26:00','2006-12-22 22:55:0',6), +(47,'0023_ABC','03','2006-12-23 15:26:00','2006-12-23 22:55:00',50), +(48,'0023_ABC','03','2007-1-06 15:26:00','2007-1-06 22:55:0',6), +(55,'0023_ABC','03','2006-07-21 15:26:00','2006-07-21 22:55:00',50), +(64,'0045_YGR','04','2006-12-24 18:00:00','2006-12-24 22:00:00',3), +(65,'0025_bbd','02','2006-12-28 18:00:00','006-12-28 22:00:00',23), +(98,'0025_bbd','02','2006-12-26 18:00:00','2006-12-26 22:00:00',23) + + +select * from Card +select * from Computer +select * from Record +--1. 查询出用户名为'张军'的上网卡的上网记录,要求显示卡号,用户名,机器编号、开始时间、结束时间,和消费金额,并按消费金额降序排列 + Select R.Cardld 卡号,C.UserName 用户名,R.ComputerID 机器编号,R.BeginTime 开始时间,R.Endtime 结束时间,R.Fee 消费金额 from Record R + inner join Card C on R.Cardld=C.ID where UserName='张军' order by Fee desc +--2. 查询出每台机器上的上网次数和消费的总金额 + Select ComputerID,count(ComputerID) 上网次数,sum(Fee) 总金额 from Record group by ComputerID +--3. 查询出所有已经使用过的上网卡的消费总金额 + Select Cardld 卡号,Sum(Fee) 消费总金额 from Record group by Cardld +--4. 查询出从未消费过的上网卡的卡号和用户名 + Select C.ID 卡号,C.UserName 用户名 from Record R right join Card C on R.Cardld=C.ID where fee is null or Fee='' + +--5. 将密码与用户名一样的上网卡信息查询出来 + Select A.* from Card A,Card B where A.ID=B.PassWord +--6. 查询出使用次数最多的机器号和使用次数 + Select C.ID 机器号,count(Cardld) 使用次数 from Record R inner join Computer C on R.ComputerID=C.ID group by C.ID + having C.ID=(Select top 1 ComputerID from Record group by ComputerID order by count(Cardld) desc ) +--7. 查询出卡号是以'ABC'结尾的用户卡号,名,上网的机器号和消费金额 + Select C.ID 用户卡号,C.UserName 用户名,R.ComputerID 机器号, sum(Fee) 消费总金额 from Card C inner join Record R on C.ID=R.Cardld where C.ID like '%ABC' group by C.ID,C.UserName,R.ComputerID +--8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 + Select C.ID 卡号,C.UserName 用户名,R.ComputerID 机器号,R.BeginTime 开始时间,R.Endtime 结束时间,fee 消费金额 from Record R + inner join Card C on R.Cardld=C.ID where datename(DW,R.BeginTime)='星期六' or datename(DW,R.BeginTime)='星期日' +--9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 + select R.Cardld 卡号,C.UserName 用户名,R.ComputerID 机器号, R.BeginTime 开始时间,R.Endtime 结束时间,fee 消费金额 from Record R + inner join Card C on R.Cardld=C.ID where datediff(hh,BeginTime,EndTime)>12 + --10. 查询除消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 + Select top 3 R.Cardld 卡号,C.UserName 用户名,R.ComputerID 机器号, R.BeginTime 开始时间, R.Endtime 结束时间, fee 消费金额 from Record R + inner join Card C on R.Cardld=C.ID order by Fee desc + -- Gitee From 55560b843c2dea1088a059e6a960fa13ea98ec8f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=98=BF=E5=90=89?= <3011074719@qq.com> Date: Thu, 1 Apr 2021 08:51:37 +0800 Subject: [PATCH 143/144] =?UTF-8?q?rename=20=E7=AC=AC=E5=8D=81=E4=BA=8C?= =?UTF-8?q?=E6=AC=A1=E8=AF=BE=E4=BD=9C=E4=B8=9A/SQLQuery1.sql=20to=20?= =?UTF-8?q?=E7=AC=AC=E5=8D=81=E4=BA=8C=E6=AC=A1=E8=AF=BE=E4=BD=9C=E4=B8=9A?= =?UTF-8?q?/=E9=99=88=E8=BF=9B=E5=90=89/SQLQuery1.sql.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SQLQuery1.sql" | 84 +++++++++---------- 1 file changed, 42 insertions(+), 42 deletions(-) rename "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/SQLQuery1.sql" => "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\351\231\210\350\277\233\345\220\211/SQLQuery1.sql" (40%) diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/SQLQuery1.sql" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\351\231\210\350\277\233\345\220\211/SQLQuery1.sql" similarity index 40% rename from "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/SQLQuery1.sql" rename to "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\351\231\210\350\277\233\345\220\211/SQLQuery1.sql" index 5f28672..61940ce 100644 --- "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/SQLQuery1.sql" +++ "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\351\231\210\350\277\233\345\220\211/SQLQuery1.sql" @@ -1,44 +1,44 @@ ---首先创建网吧计费系统的数据库,表结构和数据如2.bmp所示,表的说明如下: +--棣栧厛鍒涘缓缃戝惂璁¤垂绯荤粺鐨勬暟鎹簱锛岃〃缁撴瀯鍜屾暟鎹2.bmp鎵绀猴紝琛ㄧ殑璇存槑濡備笅锛 create database ajiji go use ajiji go ---表一为上网卡信息表(tbl_card) +--琛ㄤ竴涓轰笂缃戝崱淇℃伅琛(tbl_card) create table tbl_card ( -id varchar(20) primary key, --卡号 -passWord char(18) not null, --密码 -balance money , --卡上的余额 -userName nvarchar(10), --该上网卡所属的用户名 +id varchar(20) primary key, --鍗″彿 +passWord char(18) not null, --瀵嗙爜 +balance money , --鍗′笂鐨勪綑棰 +userName nvarchar(10), --璇ヤ笂缃戝崱鎵灞炵殑鐢ㄦ埛鍚 ) ---表2为网吧机器说明表(tbl_computer) +--琛2涓虹綉鍚ф満鍣ㄨ鏄庤〃(tbl_computer) create table tbl_computer ( -id varchar(20) primary key, --机器编号,主键 -onUse char(1) check (onUse in (1,0)),--该机器是否正在使用,0为未使用,1为正在使用 -note text , --该机器的说明 +id varchar(20) primary key, --鏈哄櫒缂栧彿锛屼富閿 +onUse char(1) check (onUse in (1,0)),--璇ユ満鍣ㄦ槸鍚︽鍦ㄤ娇鐢紝0涓烘湭浣跨敤锛1涓烘鍦ㄤ娇鐢 +note text , --璇ユ満鍣ㄧ殑璇存槑 ) ---表3为上网记录表(tbl_record): +--琛3涓轰笂缃戣褰曡〃(tbl_record)锛 create table tbl_record ( -id char(10) primary key, --记录编号 -cardId varchar(20) references tbl_card(id), --本次上网的卡号,外键 -ComputerId varchar(20) references tbl_computer(id), --本次上网记录所使用的机器号,外键 -beginTime datetime , --本次上网记录的开始时间 -endTime datetime , --本次上网记录的结束时间 -fee money , --本次上网的费用 +id char(10) primary key, --璁板綍缂栧彿 +cardId varchar(20) references tbl_card(id), --鏈涓婄綉鐨勫崱鍙凤紝澶栭敭 +ComputerId varchar(20) references tbl_computer(id), --鏈涓婄綉璁板綍鎵浣跨敤鐨勬満鍣ㄥ彿锛屽閿 +beginTime datetime , --鏈涓婄綉璁板綍鐨勫紑濮嬫椂闂 +endTime datetime , --鏈涓婄綉璁板綍鐨勭粨鏉熸椂闂 +fee money , --鏈涓婄綉鐨勮垂鐢 ) insert into tbl_card values -('0023_ABC','555','98','张军'), -('0025_bbd','abe','300','朱俊'), -('0036_CCD','何柳','100','何柳'), -('0045_YGR','0045_YGR','58','证验'), -('0078_RJV','55885fg','600','校庆'), -('0089_EDE','zhang','134','张峻') +('0023_ABC','555','98','寮犲啗'), +('0025_bbd','abe','300','鏈变繆'), +('0036_CCD','浣曟煶','100','浣曟煶'), +('0045_YGR','0045_YGR','58','璇侀獙'), +('0078_RJV','55885fg','600','鏍″簡'), +('0089_EDE','zhang','134','寮犲郴') insert into tbl_computer values ('02','0','25555'),('05','1','88888'), @@ -60,58 +60,58 @@ insert into tbl_record values select * from tbl_record select * from tbl_card select * from tbl_computer ---请完成以下题目: ---1. 查询出用户名为 '张军' 的上网卡的 上网记录,要求显示 卡号, 用户名 ,机器编号 、开始时间、结束时间,和消费金额,并按消费金额降序排列 +--璇峰畬鎴愪互涓嬮鐩細 +--1. 鏌ヨ鍑虹敤鎴峰悕涓 '寮犲啗' 鐨勪笂缃戝崱鐨 涓婄綉璁板綍锛岃姹傛樉绀 鍗″彿锛 鐢ㄦ埛鍚 锛屾満鍣ㄧ紪鍙 銆佸紑濮嬫椂闂淬佺粨鏉熸椂闂达紝鍜屾秷璐归噾棰濓紝骞舵寜娑堣垂閲戦闄嶅簭鎺掑垪 select * from tbl_record r join tbl_card c on r.cardId=c.id join tbl_computer co on r.ComputerId=co.id -where userName='张军' order by fee desc +where userName='寮犲啗' order by fee desc ---2. 查询出 每台机器上的 上网次数 和 消费的总金额 +--2. 鏌ヨ鍑 姣忓彴鏈哄櫒涓婄殑 涓婄綉娆℃暟 鍜 娑堣垂鐨勬婚噾棰 select ComputerId ,count(ComputerId),sum(fee) from tbl_record r join tbl_card c on r.cardId=c.id join tbl_computer co on r.ComputerId=co.id group by ComputerId ---3. 查询出 所有已经使用过的上网卡的 消费总金额 +--3. 鏌ヨ鍑 鎵鏈夊凡缁忎娇鐢ㄨ繃鐨勪笂缃戝崱鐨 娑堣垂鎬婚噾棰 select cardId,sum(fee) from tbl_record r join tbl_card c on r.cardId=c.id where fee is not null group by cardId ---4. 查询出 从未消费过的上网卡的 卡号 和 用户名 +--4. 鏌ヨ鍑 浠庢湭娑堣垂杩囩殑涓婄綉鍗$殑 鍗″彿 鍜 鐢ㄦ埛鍚 select c.id,userName from tbl_record r right join tbl_card c on r.cardId=c.id where fee is null group by c.id,userName ---5. 将密码与用户名一样的上网卡信息查询出来 +--5. 灏嗗瘑鐮佷笌鐢ㄦ埛鍚嶄竴鏍风殑涓婄綉鍗′俊鎭煡璇㈠嚭鏉 select t1.* from tbl_card t1 join tbl_card t2 on t1.passWord=t2.userName ---6. 查询出使用次数最多的机器号和使用次数 -select top 1 ComputerId,count(*) 使用次数 from tbl_record group by ComputerId order by 使用次数 DESC ---7. 查询出卡号是以'ABC'结尾的卡号,用户名,上网的机器号和消费金额 +--6. 鏌ヨ鍑轰娇鐢ㄦ鏁版渶澶氱殑鏈哄櫒鍙峰拰浣跨敤娆℃暟 +select top 1 ComputerId,count(*) 浣跨敤娆℃暟 from tbl_record group by ComputerId order by 浣跨敤娆℃暟 DESC +--7. 鏌ヨ鍑哄崱鍙锋槸浠'ABC'缁撳熬鐨勫崱鍙凤紝鐢ㄦ埛鍚嶏紝涓婄綉鐨勬満鍣ㄥ彿鍜屾秷璐归噾棰 select * from tbl_card c join tbl_record r on c.id=r.cardId where c.id like '%ABC' ---8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 -select cardId 卡号,userName 用户名,ComputerId 机器编号,beginTime 开始时间,endTime 结束时间,fee 消费金额 from tbl_record +--8. 鏌ヨ鍑烘槸鍛ㄥ叚銆佸懆澶╀笂缃戠殑璁板綍锛岃姹傛樉绀轰笂缃戠殑鍗″彿锛岀敤鎴峰悕锛屾満鍣ㄥ彿锛屽紑濮嬫椂闂淬佺粨鏉熸椂闂村拰娑堣垂閲戦 +select cardId 鍗″彿,userName 鐢ㄦ埛鍚,ComputerId 鏈哄櫒缂栧彿,beginTime 寮濮嬫椂闂,endTime 缁撴潫鏃堕棿,fee 娑堣垂閲戦 from tbl_record join tbl_card on tbl_record.cardId = tbl_card.id -where DATENAME(DW,beginTime)='星期六' or DATENAME(DW,beginTime)='星期日' +where DATENAME(DW,beginTime)='鏄熸湡鍏' or DATENAME(DW,beginTime)='鏄熸湡鏃' ---9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 -select cardId 卡号,userName 用户名,ComputerId 机器编号,beginTime 开始时间,endTime 结束时间,fee 消费金额 from tbl_record +--9. 鏌ヨ鎴愪竴娆′笂缃戞椂闂磋秴杩12灏忔椂鐨勭殑涓婄綉璁板綍锛岃姹傛樉绀轰笂缃戠殑鍗″彿锛岀敤鎴峰悕锛屾満鍣ㄥ彿锛屽紑濮嬫椂闂淬佺粨鏉熸椂闂村拰娑堣垂閲戦 +select cardId 鍗″彿,userName 鐢ㄦ埛鍚,ComputerId 鏈哄櫒缂栧彿,beginTime 寮濮嬫椂闂,endTime 缁撴潫鏃堕棿,fee 娑堣垂閲戦 from tbl_record join tbl_card on tbl_record.cardId = tbl_card.id where datediff(HH,beginTime,endTime)>12 select * from tbl_record where endtime-beginTime>12 ---10. 查询出消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 -select cardId 卡号,userName 用户名,ComputerId 机器编号,beginTime 开始时间,endTime 结束时间,fee 消费金额 +--10. 鏌ヨ鍑烘秷璐归噾棰濇帓鍒楀墠涓夊悕(鏈楂)鐨勪笂缃戣褰曪紝瑕佹眰鏄剧ず涓婄綉鐨勫崱鍙凤紝鐢ㄦ埛鍚嶏紝鏈哄櫒鍙凤紝寮濮嬫椂闂淬佺粨鏉熸椂闂村拰娑堣垂閲戦 +select cardId 鍗″彿,userName 鐢ㄦ埛鍚,ComputerId 鏈哄櫒缂栧彿,beginTime 寮濮嬫椂闂,endTime 缁撴潫鏃堕棿,fee 娑堣垂閲戦 from tbl_record join tbl_card on tbl_record.cardId = tbl_card.id where fee in (select top 3 fee from tbl_record order by fee DESC) order by fee DESC ---11. 查询除消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 -select cardId 卡号,userName 用户名,ComputerId 机器编号,beginTime 开始时间,endTime 结束时间,fee 消费金额 from tbl_record +--11. 鏌ヨ闄ゆ秷璐归噾棰濇帓鍒楀墠涓夊悕(鏈楂)鐨勪笂缃戣褰曪紝瑕佹眰鏄剧ず涓婄綉鐨勫崱鍙凤紝鐢ㄦ埛鍚嶏紝鏈哄櫒鍙凤紝寮濮嬫椂闂淬佺粨鏉熸椂闂村拰娑堣垂閲戦 +select cardId 鍗″彿,userName 鐢ㄦ埛鍚,ComputerId 鏈哄櫒缂栧彿,beginTime 寮濮嬫椂闂,endTime 缁撴潫鏃堕棿,fee 娑堣垂閲戦 from tbl_record join tbl_card on tbl_record.cardId = tbl_card.id where fee not in (select top 3 fee from tbl_record order by fee DESC) order by fee DESC -- Gitee From 24f31c55223fcc99d794d8799d2d784f87029213 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=98=BF=E5=90=89?= <3011074719@qq.com> Date: Thu, 1 Apr 2021 08:52:14 +0800 Subject: [PATCH 144/144] =?UTF-8?q?rename=20=E7=AC=AC=E5=8D=81=E4=BA=8C?= =?UTF-8?q?=E6=AC=A1=E8=AF=BE=E4=BD=9C=E4=B8=9A/1.txt=20to=20=E7=AC=AC?= =?UTF-8?q?=E5=8D=81=E4=BA=8C=E6=AC=A1=E8=AF=BE=E4=BD=9C=E4=B8=9A/?= =?UTF-8?q?=E8=BF=AA=E5=8A=9B=E4=BA=9A=E5=B0=94/1.txt.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\350\277\252\345\212\233\344\272\232\345\260\224/1.txt" | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/1.txt" => "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\277\252\345\212\233\344\272\232\345\260\224/1.txt" (100%) diff --git "a/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/1.txt" "b/\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\277\252\345\212\233\344\272\232\345\260\224/1.txt" similarity index 100% rename from "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/1.txt" rename to "\347\254\254\345\215\201\344\272\214\346\254\241\350\257\276\344\275\234\344\270\232/\350\277\252\345\212\233\344\272\232\345\260\224/1.txt" -- Gitee