diff --git "a/02\346\210\230\345\275\271\345\206\233/\347\254\254\344\270\200\346\254\241\344\275\234\344\270\232/\346\226\260\345\273\272\346\226\207\346\234\254\346\226\207\346\241\243.txt" "b/02\346\210\230\345\275\271\345\206\233/\347\254\254\344\270\200\346\254\241\344\275\234\344\270\232/\346\226\260\345\273\272\346\226\207\346\234\254\346\226\207\346\241\243.txt" deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git "a/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\344\270\200\346\254\241\344\275\234\344\270\232/\347\254\254\344\270\200\346\254\241\344\275\234\344\270\232.jpg" "b/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\344\270\200\346\254\241\344\275\234\344\270\232/\347\254\254\344\270\200\346\254\241\344\275\234\344\270\232.jpg" new file mode 100644 index 0000000000000000000000000000000000000000..e5925290c5a02db4464b312b6d97b06cbc83fa68 Binary files /dev/null and "b/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\344\270\200\346\254\241\344\275\234\344\270\232/\347\254\254\344\270\200\346\254\241\344\275\234\344\270\232.jpg" differ diff --git "a/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\344\270\203\346\254\241\344\275\234\344\270\232/\347\254\254\344\270\203\346\254\241\344\273\243\347\240\201.sql" "b/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\344\270\203\346\254\241\344\275\234\344\270\232/\347\254\254\344\270\203\346\254\241\344\273\243\347\240\201.sql" new file mode 100644 index 0000000000000000000000000000000000000000..bf2397e5cb751d25a667a59bffdbaa2793e3df30 --- /dev/null +++ "b/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\344\270\203\346\254\241\344\275\234\344\270\232/\347\254\254\344\270\203\346\254\241\344\273\243\347\240\201.sql" @@ -0,0 +1,42 @@ +create database wark2; +go +use wark2; +create table orders( +orderId int primary key, +orderDate datetime, +); +--drop table orders +create table orderItem( +itemId int primary key identity, +orderId int , +itemType nvarchar(20), +itemName nvarchar(20), +theNumber int , +theMoney int, +); +--drop table orderItem +insert into orders(orderId,orderDate) +values (1,'2008-01-12 00:00:00.000'), +(2,'2008-02-10 00:00:00.000'), +(3,'2008-02-15 00:00:00.000'), +(4,'2008-03-10 00:00:00.000') +select * from orders + +insert into orderItem( [orderId], [itemType], [itemName], [theNumber], [theMoney]) +values(1,'文具','笔',72,2),(1,'文具','尺',10,1),(1,'体育用品','篮球',1,56), +(2,'文具','笔',36,2),(2,'文具','固体胶',20,3),(2,'日常用品','透明胶',2,1),(2,'体育用品','羽毛球',20,3), +(3,'文具','订书机',20,3),(3,'文具','订书针',10,3),(3,'文具','裁纸刀',5,5), +(4,'文具','笔',20,2),(4,'文具','信纸',50,1),(4,'日常用品','毛巾',4,5),(4,'日常用品','透明胶',30,1),(4,'体育用品','羽毛球',20,3) +select * from orderItem + +select orderId,sum(theNumber) 订购物品总和 from orderItem group by orderId + +select orderId,sum(theNumber) 订购物品总和,avg(theMoney) 平均单价 from orderItem group by orderId having avg(theMoney)<10 and orderid<3 + +select orderId,sum(theNumber) 产品总数,avg(theMoney) 平均单价 from orderItem group by orderId having sum(theNumber)>50 and avg(theMoney)<10 + +select itemType,count(itemType) 订购次数 from orderItem group by itemType + +select itemType,sum(theNumber) 订购物品总和,avg(theMoney) 平均单价 from orderItem group by itemType having sum(theNumber)>100 + +select itemName 产品名称,count(itemType) 订购次数,sum(theNumber) 总数量,avg(theMoney) 平均单价 from orderItem group by itemName \ No newline at end of file diff --git "a/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\344\270\203\346\254\241\344\275\234\344\270\232/\347\254\254\345\205\255\346\254\241\344\275\234\344\270\232\357\274\2101\357\274\211.sql" "b/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\344\270\203\346\254\241\344\275\234\344\270\232/\347\254\254\345\205\255\346\254\241\344\275\234\344\270\232\357\274\2101\357\274\211.sql" new file mode 100644 index 0000000000000000000000000000000000000000..2874a5f8f48635adb546e227a51561b688d76737 --- /dev/null +++ "b/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\344\270\203\346\254\241\344\275\234\344\270\232/\347\254\254\345\205\255\346\254\241\344\275\234\344\270\232\357\274\2101\357\274\211.sql" @@ -0,0 +1,67 @@ +create database work1; +go +use work1; +create table stuinfo( +stuNO nchar(5) primary key, +stuName nvarchar(50) not null, +stuAge int, +stuAddress nvarchar(255) , +stuSeat int identity, +stuSex tinyint, +); +--drop table stuinfo +create table stuexam( +examNO int primary key, +stuNO nchar(5), +writtenExam int , +labExam int, +); +--drop table stuexam +insert into stuinfo(stuNO, stuName, stuAge, stuAddress,stuSex) +values('s2501','张秋利',20,'美国硅谷',1), + ('s2502','李斯文',18,'湖北武汉',0), + ('s2503','马文才',22,'湖南长沙',1), + ('s2504','欧阳俊雄',21,'湖北武汉',0), + ('s2505','梅超风',20,'湖北武汉',1), + ('s2506','陈旋风',19,'美国硅谷',1), + ('s2507','陈风',20,'美国硅谷',0) +insert into stuexam(examNO,stuNO, writtenExam, labExam) +values(1,'s2501',50,70),(2,'s2502',60,65), +(3,'s2503',86,85),(4,'s2504',40,80), +(5,'s2505',70,90),(6,'s2506',85,90) + +select stuNO as 学生编号, stuName as 学生姓名,stuAge as 学生年龄,stuAddress as 生源地址,stuSeat as 学生座位, stuSex as 学生性别 from stuinfo +select stuName as 学生姓名,stuAge as 学生年龄,stuAddress as 生源地址 from stuinfo +select stuNO as 学号,writtenExam 笔试,机试=labExam from stuexam +select stuNO as 学号, stuName as 学生姓名 , stuAddress as 生源地址,concat(stuName ,'@',stuAddress) as 学生邮箱 from stuinfo +select stuName+'@'+stuAddress 邮箱 from stuinfo +select stuNO as 学号,writtenExam 笔试,机试=labExam ,cast(writtenExam+labExam As int) as 总分 from stuexam +select distinct stuAddress 生源地址 from stuinfo +select distinct stuAge 学生年龄段 from stuinfo +select top 3 * from stuinfo +select top 4 stuName as 学生姓名,stuSeat as 学生座位 from stuinfo +select top 50 percent * from stuinfo +select * from stuinfo where stuAddress='湖北武汉' and stuAge=20 +select * from stuexam where labExam>=60 and labExam<=80 order by labExam desc +select * from stuexam where labExam between '60' and '80' order by labExam desc +select * from stuinfo where stuAddress='湖北武汉' or stuAddress='湖南长沙' +--select * from stuinfo where stuAddress between '湖北武汉' and '湖南长沙' +select * from stuinfo where stuAddress in('湖北武汉','湖南长沙') +select * from stuexam where writtenExam<70 or writtenExam>90 order by writtenExam asc +select * from stuexam where writtenExam not between '70' and '90' order by writtenExam asc +select * from stuinfo where stuAge is null +select * from stuinfo where stuAge is not null +select * from stuinfo where stuAddress like '%湖%' +select * from stuinfo where stuName like '张_' +select * from stuinfo where stuName like '__俊%' +select * from stuinfo order by stuAge desc +select * from stuinfo order by stuAge desc ,stuSeat asc +select examNO,stuNO ,writtenExam,labExam from stuexam where writtenExam=(select max(writtenExam) from stuexam ) +select examNO,stuNO,writtenExam,labExam from stuexam where labExam=(select min(labExam)from stuexam) +select top 1 * from stuexam order by writtenExam desc +select top 1 * from stuexam order by labExam asc +select stuAddress,avg(stuAge) stuAge from stuinfo group by stuAddress +select stuSex,sum(stuAge) stuAge from stuinfo group by stuSex +select stuSex,stuAddress,avg(stuAge) 平均年龄,sum(stuAge) 年龄总和 from stuinfo group by stuSex,stuAddress + + diff --git "a/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\344\270\211\346\254\241\344\275\234\344\270\232/\347\254\254\344\270\211\346\254\241\344\275\234\344\270\232.sql" "b/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\344\270\211\346\254\241\344\275\234\344\270\232/\347\254\254\344\270\211\346\254\241\344\275\234\344\270\232.sql" new file mode 100644 index 0000000000000000000000000000000000000000..64af7065455bb4e2d904880f5b15f8039aef5e2d --- /dev/null +++ "b/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\344\270\211\346\254\241\344\275\234\344\270\232/\347\254\254\344\270\211\346\254\241\344\275\234\344\270\232.sql" @@ -0,0 +1,62 @@ +create database work; +use work; +--班级信息表 +create table class( +--班级编号 +classid int primary key identity(1,1) not null, +--班级名称 +classname nvarchar(50) not null, +); +--学生信息表 +create table student( +--学生编号 +studentid int primary key identity(1,1) not null, +--学生姓名 +studentname nvarchar not null, +--学生性别 +studentsex tinyint default'3' check(studentsex='1' or studentsex='2' or studentsex='3') not null, +--学生生日 +studentbirth date, +--学生地址 +studentaddress nvarchar not null, +--所属班级id +classid int default '0' unique not null, +--身份证 +studentldentitycard varchar (20) not null default'', +); +--课程信息表 +create table course( +--课程编号 +courseid int primary key identity(1,1) not null, +--课程名称 +coursename nvarchar unique not null, +--课程学分 +coursecredit tinyint default '0' check ('score'>0) not null, +); +--班级课程表 +create table classcourse( +--自增编号 +classcourseld int primary key identity(1,1) not null, +--课程名称 +classid int not null, +foreign key(classid) references class(classid), +--课程学分 +courseid int not null, +foreign key(courseid) references course(courseid), + +); +--分数信息表 +create table score( +--自增编号 +scoreid int primary key identity(1,1) not null, +--学生编号 +studentid int not null, +foreign key(studentid) references student(studentid), +--课程编号 +courseid int not null, +foreign key(courseid) references course(courseid), +--分数 +score int check('score'>0) not null, +--是否是补考:0不是,1是 +isresit tinyint default '0' not null, +); \ No newline at end of file diff --git "a/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\344\271\235\346\254\241\344\275\234\344\270\232/\344\275\234\344\270\2321.sql" "b/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\344\271\235\346\254\241\344\275\234\344\270\232/\344\275\234\344\270\2321.sql" new file mode 100644 index 0000000000000000000000000000000000000000..ac5983e02f52866c01cc1309a9cb1cc5d7178825 --- /dev/null +++ "b/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\344\271\235\346\254\241\344\275\234\344\270\232/\344\275\234\344\270\2321.sql" @@ -0,0 +1,53 @@ +create database work1; +go +use work1; +create table stuinfo( +stuNO nchar(5) primary key, +stuName nvarchar(50) not null, +stuAge int, +stuAddress nvarchar(255) , +stuSeat int identity, +stuSex tinyint, +); +--drop table stuinfo +create table stuexam( +examNO int primary key, +stuNO nchar(5), +writtenExam int , +labExam int, +); +--drop table stuexam +insert into stuinfo(stuNO, stuName, stuAge, stuAddress,stuSex) +values('s2501','张秋利',20,'美国硅谷',1), + ('s2502','李斯文',18,'湖北武汉',0), + ('s2503','马文才',22,'湖南长沙',1), + ('s2504','欧阳俊雄',21,'湖北武汉',0), + ('s2505','梅超风',20,'湖北武汉',1), + ('s2506','陈旋风',19,'美国硅谷',1), + ('s2507','陈风',20,'美国硅谷',0) +insert into stuexam(examNO,stuNO, writtenExam, labExam) +values(1,'s2501',50,70),(2,'s2502',60,65), +(3,'s2503',86,85),(4,'s2504',40,80), +(5,'s2505',70,90),(6,'s2506',85,90) +--1.查询学生的姓名,年龄,笔试成绩和机试成绩 +select stuName,stuAge,writtenExam,labExam from +stuexam join stuinfo on stuexam.stuNO=stuinfo.stuNO +--2.查询笔试和机试成绩都在60分以上的学生的学号,姓名,笔试成绩和机试成绩 +select stuexam.stuNO,stuName,writtenExam,labExam from +stuexam join stuinfo on stuexam.stuNO=stuinfo.stuNO +where labExam>60 and writtenExam>60 +--3.查询所有学生的学号,姓名,笔试成绩,机试成绩,没有参加考试的学生的成绩以NULL值填充 +select stuexam.stuNO,stuName,writtenExam,labExam from +stuexam right join stuinfo on stuexam.stuNO=stuinfo.stuNO +--4.查询年龄在20以上(包括20)的学生的姓名,年龄,笔试成绩和机试成绩,并按笔试成绩降序排列 +select stuName,stuAge,writtenExam,labExam from +stuexam join stuinfo on stuexam.stuNO=stuinfo.stuNO +where stuAge>=20 order by stuAge desc +--5.查询男女生的机试平均分 +select stuSex,avg(writtenExam) 机试平均分 from +stuinfo join stuexam on stuinfo.stuNO=stuexam.stuNO +group by stuSex +--6.查询男女生的笔试总分 +select stuSex,sum(labExam) 笔试总分 from +stuinfo join stuexam on stuinfo.stuNO=stuexam.stuNO +group by stuSex \ No newline at end of file diff --git "a/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\344\271\235\346\254\241\344\275\234\344\270\232/\344\275\234\344\270\2322.sql" "b/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\344\271\235\346\254\241\344\275\234\344\270\232/\344\275\234\344\270\2322.sql" new file mode 100644 index 0000000000000000000000000000000000000000..91504709f4e1f3434c619c791b86d0a568564fbb --- /dev/null +++ "b/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\344\271\235\346\254\241\344\275\234\344\270\232/\344\275\234\344\270\2322.sql" @@ -0,0 +1,48 @@ +create database wark2; +go +use wark2; +create table orders( +orderId int primary key, +orderDate datetime, +); +--drop table orders +create table orderItem( +itemId int primary key identity, +orderId int , +itemType nvarchar(20), +itemName nvarchar(20), +theNumber int , +theMoney int, +); +--drop table orderItem +insert into orders(orderId,orderDate) +values (1,'2008-01-12 00:00:00.000'), +(2,'2008-02-10 00:00:00.000'), +(3,'2008-02-15 00:00:00.000'), +(4,'2008-03-10 00:00:00.000') +select * from orders + +insert into orderItem( [orderId], [itemType], [itemName], [theNumber], [theMoney]) +values(1,'文具','笔',72,2),(1,'文具','尺',10,1),(1,'体育用品','篮球',1,56), +(2,'文具','笔',36,2),(2,'文具','固体胶',20,3),(2,'日常用品','透明胶',2,1),(2,'体育用品','羽毛球',20,3), +(3,'文具','订书机',20,3),(3,'文具','订书针',10,3),(3,'文具','裁纸刀',5,5), +(4,'文具','笔',20,2),(4,'文具','信纸',50,1),(4,'日常用品','毛巾',4,5),(4,'日常用品','透明胶',30,1),(4,'体育用品','羽毛球',20,3) +select * from orderItem +--1.查询所有的订单的订单的编号,订单日期,订购产品的类别和订购的产品名称,订购数量和订购单价 +select orders.orderId,orderDate,itemType,itemName,theNumber,theMoney from +orderItem join orders on orderItem.orderId=orders.orderId +--2.查询订购数量大于50的订单的编号,订单日期,订购产品的类别和订购的产品名称 +select orders.orderId,orderDate,itemType,itemName from +orderItem join orders on orderItem.orderId=orders.orderId +where theNumber>50 +--3.查询所有的订单的订单的编号,订单日期,订购产品的类别和订购的产品名称,订购数量和订购单价以及订购总价 +select orders.orderId,orderDate,itemType,itemName,theNumber*theMoney 订购总价 from +orderItem join orders on orderItem.orderId=orders.orderId +--4.查询单价大于等于5并且数量大于等于50的订单的订单的编号,订单日期,订购产品的类别和订购的产品名称,订购数量和订购单价以及订购总价 +select orders.orderId,orderDate,itemType,itemName,theNumber*theMoney 订购总价 from +orderItem join orders on orderItem.orderId=orders.orderId +where theMoney>5 and theNumber>=50 +--5.查询每个订单分别订购了几个产品 +select orderid 编号,count(itemType) 订购产品数 from orderItem group by orderId +--6.查询每个订单里的每个类别的产品分别订购了几次和总数量 +select orderId 订单编号,itemType 产品类别,count(orderId) 订购次数,sum(theNumber) 总数量 from orderItem group by itemType,orderId diff --git "a/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\344\271\235\346\254\241\344\275\234\344\270\232/\344\275\234\344\270\2324.sql" "b/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\344\271\235\346\254\241\344\275\234\344\270\232/\344\275\234\344\270\2324.sql" new file mode 100644 index 0000000000000000000000000000000000000000..6578b55e6af9f64753c0142e40961c94e66e8266 --- /dev/null +++ "b/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\344\271\235\346\254\241\344\275\234\344\270\232/\344\275\234\344\270\2324.sql" @@ -0,0 +1,118 @@ + create database work; + go +use work; +--班级信息表 +create table class( +--班级编号 +classid int primary key identity(1,1) not null, +--班级名称 +classname nvarchar(50) not null, +); +--学生信息表 +create table student( +--学生编号 +studentid int primary key identity(1,1) not null, +--学生姓名 +studentname nvarchar(50) not null, +--学生性别 +studentsex tinyint default'3' check(studentsex='1' or studentsex='2' or studentsex='3') not null, +--学生生日 +studentbirth date, +--学生地址 +studentaddress nvarchar(255) not null, +--所属班级id +classid int default '0' not null, +); + +--课程信息表 +create table course( +--课程编号 +courseid int primary key identity(1,1) not null, +--课程名称 +coursename nvarchar(50) unique not null, +--课程学分 +coursecredit tinyint default 0 check(coursecredit>0) not null, +); + +--班级课程表 +create table classcourse( +--自增编号 +classcourseid int primary key identity(1,1) not null, +--班级编号 +classid int not null, +--课程编号 +courseid int not null, +); +--分数信息表 +create table score( +--自增编号 +scoreid int primary key identity(1,1) not null, +--学生编号 +studentid int not null, +--课程编号 +courseid int not null, +--分数 +score int check(score>0) not null, +); + + insert into class(classname) + values('软件一班'),('软件二班'),('计算机应用技术班') + insert into student( [studentname], [studentsex], [studentbirth], [studentaddress], [classid]) + values('刘正','1','2000-01-01','广西省桂林市七星区空明西路10号鸾东小区',1),('黄贵','1','2001-03-20','江西省南昌市青山湖区艾溪湖南路南150米广阳小区',1),('陈美','2','2000-07-08','福建省龙岩市新罗区曹溪街道万达小区',1); + insert into student( [studentname], [studentsex], [studentbirth], [studentaddress], [classid]) + values('江文','1','2000-08-10','安徽省合肥市庐阳区四里河路与潜山路交汇处万科城市之光',2),('钟琪','2','2001-03-21','湖南省长沙市雨花区红花坡社区',2); + insert into student( [studentname], [studentsex], [studentbirth], [studentaddress], [classid]) + values('曾小林','1','1999-12-10','安徽省合肥市庐阳区四里河路与潜山路交汇处万科城市之光',3),('欧阳天天','2','2000-04-05','湖北省武汉市洪山区友谊大道与二环线交汇处融侨悦府',3),('徐长卿','1','2001-01-30','江苏省苏州市苏州工业园区独墅湖社区',3),('李逍遥','1','1999-11-11','广东省广州市白云区金沙洲岛御洲三街恒大绿洲',3); + insert into student( [studentname], [studentsex], [studentbirth], [studentaddress]) + values('东方不败','3','1999-01-30','河北省平定州西北四十余里的猩猩滩'),('令狐冲','1','2000-08-11','陕西省渭南市华阴市玉泉路南段'); + insert into course([coursename], [coursecredit]) + values('数据库高级应用',3),('javascript编程基础',3),('web前端程序设计基础',4),('动态网页设计.net基础',6),('动态网页设计php基础',6); + insert into classcourse( classid, courseid) + values(1,1),(1,2),(1,3),(1,4), + (2,1),(2,2),(2,3),(2,4), + (3,1),(3,2),(3,3),(3,5) + insert into score([studentid], [courseid], [score]) + values(1,1,80),(1,2,78),(1,3,65),(1,4,90), + (2,1,60),(2,2,77),(2,3,68),(2,4,88), + (3,1,88),(3,2,45),(3,3,66),(3,4,75), + (4,1,56),(4,2,80),(4,3,75),(4,4,66), + (5,1,88),(5,2,79),(5,3,72),(5,4,85), + (6,1,68),(6,2,88),(6,3,73),(6,5,63), + (7,1,84),(7,2,90),(7,3,92),(7,5,78), + (8,1,58),(8,2,59),(8,3,65),(8,5,75), + (9,1,48),(9,2,67),(9,3,71),(9,5,56),(9,1,48); + delete from score where scoreid=37; + update student set studentbirth='2000-04-06' where studentid = 7; + update score set score = 61 where studentid = 8 and courseid = 2; + select * from class; + select * from student; + select * from course; + select * from classcourse; + select * from score; + --作业4 + --1. 查询 李逍遥(编号id为9) 所在的班级名称(连接查询 2表) + select studentid,classname from student join class on student.classid=class.classid where studentid=9 + --2. 查询 李逍遥(学生编号id为9) 学习的课程有哪几门,需要姓名、课程名称、课程学分(连接查询) + select studentname,coursename,coursecredit from student join classcourse on classcourse.classid=student.classid + join course on classcourse.courseid=course.courseid + where studentid=9 + --3. 查询 李逍遥(学生编号id为9) 学习的课程考试得分,需要姓名、课程名称、课程学分、得分(连接查询) + select studentname,coursename,coursecredit,score from student join classcourse on classcourse.classid=student.classid + join course on classcourse.courseid=course.courseid + join score on score.courseid=classcourse.courseid + where student.studentid=9 and score.studentid=9 + --4. 使用子查询查询 软件一班的每个学生 的平均分(聚合查询 + 子查询 + 分组) + select studentid,avg(score) 平均分 from score + where studentid in (1,2,3) + group by studentid + + + --5. 使用连接查询 软件二班的每个学生 的平均分(聚合查询 + 连接查询 + 分组) + select student.studentid,avg(score) 平均分 from score join student on student.studentid=score.studentid + where classid=2 + group by student.studentid + + --6. 按照班级查询所有课程的平均分,并且按照平均分高低进行排序。(聚合查询 + 连接查询 + 分组) + select class.classid,avg(score) 平均分 from score join classcourse on score.courseid=classcourse.courseid + join class on classcourse.classid=class.classid + group by class.classid order by avg(score) desc diff --git "a/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\344\271\235\346\254\241\344\275\234\344\270\232/\347\273\203\344\271\240\344\272\214\357\274\2101\357\274\211.sql" "b/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\344\271\235\346\254\241\344\275\234\344\270\232/\347\273\203\344\271\240\344\272\214\357\274\2101\357\274\211.sql" new file mode 100644 index 0000000000000000000000000000000000000000..e59b6c00022af9dba1a114a3440d139b99959529 --- /dev/null +++ "b/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\344\271\235\346\254\241\344\275\234\344\270\232/\347\273\203\344\271\240\344\272\214\357\274\2101\357\274\211.sql" @@ -0,0 +1,118 @@ +create database work; +go +use work; + + +create table stuinfo( +stuid int identity(1,1) primary key , +stuname nchar(10) , +stuage int, +stusex nchar(1) default '' check(stusex=1 or stusex=0) , +stutime time , +); +go + +create table courseinfo( +courseid int identity(1,1) primary key, +coursename nchar(20), +coursemarks int , +); +go + +create table scores( +scoreid int identity(1,1) primary key, +stuid int, +courseid int , +score int, +); +go + +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 scores(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 scores.stuid 学号,count(scores.courseid) 数量,avg(score) 平均分 from scores +join stuinfo on scores.stuid=stuinfo.stuid +group by scores.stuid; + +--2.查询出每门课程的选修的学生的个数和学生考试的总分 +select courseinfo.courseid 课程号,count(stuinfo.stuid) 学生个数,sum(score) 总分 from stuinfo +inner join scores on stuinfo.stuid=scores.stuid +inner join courseinfo on courseinfo.courseid=scores.courseid +group by courseinfo.courseid + + + +--3.查询出性别一样并且年龄一样的学生的信息 +select distinct(a1.stuname) 姓名,a1.stusex 性别,a1.stuage 年龄 from stuinfo a join stuinfo a1 +on a.stuage= a1.stuage and a.stusex=a1.stusex +where a.stuid<>a1.stuid + +--4.查询出学分一样的课程信息 +select distinct w.coursename 课程名,w.coursemarks 学分 from courseinfo w join courseinfo w1 +on w.coursemarks=w1.coursemarks +where w.courseid<>w1.courseid + +--5.查询出参加了考试的学生的学号,姓名,课程号和分数 +select stuinfo.stuid 学号,stuname 姓名,courseinfo.courseid 课程号,score 分数 from stuinfo +inner join scores on scores.stuid=stuinfo.stuid +inner join courseinfo on courseinfo.courseid=scores.courseid + + +--6.查询出参加了考试的学生的学号,课程号,课程名,课程学分和分数 +select stuinfo.stuid 学号,courseinfo.courseid 课程号,coursename 课程名,coursemarks 课程学分,score 分数 from stuinfo +inner join scores on scores.stuid=stuinfo.stuid +inner join courseinfo on courseinfo.courseid=scores.courseid + + +--7.查询出没有参加考试的学生的学号和姓名 +select stuinfo.stuid 学号,stuname 姓名 from stuinfo +left join scores on stuinfo.stuid=scores.stuid +where scores.score is null + +--8.查询出是周六周天来报到的学生 + + +--9.查询出姓名中有字母a的学生的信息 +select * from stuinfo +where stuname like '%a%'; + +--10.查询出选修了2门课程以上的并且考试平均分在70以上的学生的学号和考试平均分以及选修课程的数量 +select count(scores.courseid) 选修课程数,avg(score) 平均分 from stuinfo +inner join scores on scores.stuid=stuinfo.stuid +group by scores.stuid +having avg(score)>70 and count(scores.courseid)>2 + + + + + + + + + diff --git "a/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\344\271\235\346\254\241\344\275\234\344\270\232/\347\273\203\344\271\240\344\272\214\357\274\2102\357\274\211.sql" "b/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\344\271\235\346\254\241\344\275\234\344\270\232/\347\273\203\344\271\240\344\272\214\357\274\2102\357\274\211.sql" new file mode 100644 index 0000000000000000000000000000000000000000..044430068afaf23a44d729f1f9e26c10223ea8b3 --- /dev/null +++ "b/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\344\271\235\346\254\241\344\275\234\344\270\232/\347\273\203\344\271\240\344\272\214\357\274\2102\357\274\211.sql" @@ -0,0 +1,92 @@ +create database work1; +go +use work1; + +create table tbl_card( +id varchar(20) primary key, +passWord varchar(50) , +balance money, +username nvarchar(50) not null, +); +go +create table tbl_computer( +id varchar(20) primary key , +onUse tinyint check(onUse=0 or onUse=1) , +note varchar(20), +); +go +create table tbl_record( +id int primary key, +cardId varchar(20) references tbl_card(id), +computerId varchar(20) references tbl_computer(id), +begintime datetime , +endtime datetime , +fee money , +); +go + +insert into tbl_card(id,passWord,balance,username) +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(id, onUse, 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','2007-12-25 22:00:00',23), + (45,'0023_ABC','03','2006-12-23 15:26:00','2007-12-23 22:55:00',50), + (46,'0023_ABC','03','2006-12-22 15:26:00','2007-12-22 22:55:00',6), + (47,'0023_ABC','03','2006-12-23 15:26:00','2007-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','2007-07-21 22:55:00',50), + (64,'0078_RJV','04','2006-12-24 18:00:00','2007-12-24 22:00:00',300), + (65,'0025_bbd','02','2006-12-28 18:00:00','2007-12-28 22:00:00',23), + (98,'0025_bbd','02','2006-12-26 18:00:00','2007-12-26 22:00:00',23) + +--1. 查询出用户名为'张军'的上网卡的上网记录,要求显示卡号,用户名,机器编号、开始时间、结束时间,和消费金额,并按消费金额降序排列 +select cardId,username,computerId,begintime,endtime,fee from tbl_card as a1 +join tbl_record as a2 on a1.id=a2.cardId +where username='张军' order by fee desc + +--2. 查询出每台机器上的上网次数和消费的总金额 +select computerId,count(computerid)上网次数,sum(fee) 消费总金额 from tbl_record +group by computerId + +--3. 查询出所有已经使用过的上网卡的消费总金额 +select cardId,count(computerid)上网次数,sum(fee) 消费总金额 from tbl_record +group by cardId + +--4. 查询出从未消费过的上网卡的卡号和用户名 +select a1.id,username from tbl_card as a1 +left join tbl_record as a2 on a1.id=a2.cardId +where a2.fee is null + +--5. 将密码与用户名一样的上网卡信息查询出来 +select distinct * from tbl_card +where id=passWord + +--6. 查询出使用次数最多的机器号和使用次数 +select top 1 computerId,count(computerId) 使用次数 +from tbl_record group by computerId order by count(computerId) desc + +--7. 查询出卡号是以'ABC'结尾的卡号,用户名,上网的机器号和消费金额 +select cardid,username,computerid,fee from tbl_card as a +join tbl_record as a1 on a.id=a1.cardId where cardId like '%ABC' + +--8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select cardid 卡号,username 用户名,computerid 机器号,begintime 开始时间,endtime 结束时间,fee 消费金额 +from tbl_record inner join tbl_card on tbl_record.cardid=tbl_card.id +where datepart(weekday,cast(tbl_record.begintime as date)) in (1,7) + +--9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select cardid 卡号,username 用户名,computerid 机器号,begintime 开始时间,endtime 结束时间,fee 消费金额 +from tbl_record inner join tbl_card on tbl_record.cardid=tbl_card.id where (begintime-endtime)>'12:00:00' + +--10. 查询除消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 + select top 3 cardid,username,computerid,begintime,endtime,fee from tbl_card join tbl_record on tbl_card.id=tbl_record.cardId + order by fee desc + diff --git "a/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\344\272\214\346\254\241\344\275\234\344\270\232/\347\254\254\344\272\214\346\254\241\344\275\234\344\270\232\357\274\2101\357\274\211.jpg" "b/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\344\272\214\346\254\241\344\275\234\344\270\232/\347\254\254\344\272\214\346\254\241\344\275\234\344\270\232\357\274\2101\357\274\211.jpg" new file mode 100644 index 0000000000000000000000000000000000000000..661d5dc61c31b76aa37a3a885b23f618c459560f Binary files /dev/null and "b/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\344\272\214\346\254\241\344\275\234\344\270\232/\347\254\254\344\272\214\346\254\241\344\275\234\344\270\232\357\274\2101\357\274\211.jpg" differ diff --git "a/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\344\272\214\346\254\241\344\275\234\344\270\232/\347\254\254\344\272\214\346\254\241\344\275\234\344\270\232\357\274\2102\357\274\211.jpg" "b/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\344\272\214\346\254\241\344\275\234\344\270\232/\347\254\254\344\272\214\346\254\241\344\275\234\344\270\232\357\274\2102\357\274\211.jpg" new file mode 100644 index 0000000000000000000000000000000000000000..0e73c203c001d87592411f09e43544bf973a31e9 Binary files /dev/null and "b/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\344\272\214\346\254\241\344\275\234\344\270\232/\347\254\254\344\272\214\346\254\241\344\275\234\344\270\232\357\274\2102\357\274\211.jpg" differ diff --git "a/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\344\272\224\346\254\241\344\275\234\344\270\232/SQLQuery1.sql" "b/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\344\272\224\346\254\241\344\275\234\344\270\232/SQLQuery1.sql" new file mode 100644 index 0000000000000000000000000000000000000000..7399a99bae3701b179ed741ece15358588106726 --- /dev/null +++ "b/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\344\272\224\346\254\241\344\275\234\344\270\232/SQLQuery1.sql" @@ -0,0 +1,54 @@ +create database work; +use work; +--班级信息表 +create table class( +--班级编号 +classid int primary key identity(1,1) not null, +--班级名称 +classname nvarchar(50) not null, +); +--学生信息表 +create table student( +--学生编号 +studentid int primary key identity(1,1) not null, +--学生姓名 +studentname nvarchar(50) not null, +--学生性别 +studentsex tinyint default'3' check(studentsex='1' or studentsex='2' or studentsex='3') not null, +--学生生日 +studentbirth date, +--学生地址 +studentaddress nvarchar(255) not null, +--所属班级id +classid int default '0' not null, +); + +--课程信息表 +create table course( +--课程编号 +courseid int primary key identity(1,1) not null, +--课程名称 +coursename nvarchar(50) unique not null, +--课程学分 +coursecredit tinyint default '0' check('coursecredit'>0) not null, +); +--班级课程表 +create table classcourse( +--自增编号 +classcourseid int primary key identity(1,1) not null, +--班级编号 +classid int not null, +--课程编号 +courseid int not null, +); +--分数信息表 +create table score( +--自增编号 +scoreid int primary key identity(1,1) not null, +--学生编号 +studentid int not null, +--课程编号 +courseid int not null, +--分数 +score int check('score'>0) not null, +); \ No newline at end of file diff --git "a/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\344\272\224\346\254\241\344\275\234\344\270\232/\347\254\254\344\272\224\346\254\241\344\275\234\344\270\232\357\274\2101\357\274\211.sql" "b/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\344\272\224\346\254\241\344\275\234\344\270\232/\347\254\254\344\272\224\346\254\241\344\275\234\344\270\232\357\274\2101\357\274\211.sql" new file mode 100644 index 0000000000000000000000000000000000000000..81a22844a8015e8a34c93c18f6993652ea9a5d8c --- /dev/null +++ "b/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\344\272\224\346\254\241\344\275\234\344\270\232/\347\254\254\344\272\224\346\254\241\344\275\234\344\270\232\357\274\2101\357\274\211.sql" @@ -0,0 +1,35 @@ + insert into class(classname) + values('软件一班'),('软件二班'),('计算机应用技术班') + insert into student( [studentname], [studentsex], [studentbirth], [studentaddress], [classid]) + values('刘正','1','2000-01-01','广西省桂林市七星区空明西路10号鸾东小区',1),('黄贵','1','2001-03-20','江西省南昌市青山湖区艾溪湖南路南150米广阳小区',1),('陈美','2','2000-07-08','福建省龙岩市新罗区曹溪街道万达小区',1); + insert into student( [studentname], [studentsex], [studentbirth], [studentaddress], [classid]) + values('江文','1','2000-08-10','安徽省合肥市庐阳区四里河路与潜山路交汇处万科城市之光',2),('钟琪','2','2001-03-21','湖南省长沙市雨花区红花坡社区',2); + insert into student( [studentname], [studentsex], [studentbirth], [studentaddress], [classid]) + values('曾小林','1','1999-12-10','安徽省合肥市庐阳区四里河路与潜山路交汇处万科城市之光',3),('欧阳天天','2','2000-04-05','湖北省武汉市洪山区友谊大道与二环线交汇处融侨悦府',3),('徐长卿','1','2001-01-30','江苏省苏州市苏州工业园区独墅湖社区',3),('李逍遥','1','1999-11-11','广东省广州市白云区金沙洲岛御洲三街恒大绿洲',3); + insert into student( [studentname], [studentsex], [studentbirth], [studentaddress]) + values('东方不败','3','1999-01-30','河北省平定州西北四十余里的猩猩滩'),('令狐冲','1','2000-08-11','陕西省渭南市华阴市玉泉路南段'); + insert into course([coursename], [coursecredit]) + values('数据库高级应用',3),('javascript编程基础',3),('web前端程序设计基础',4),('动态网页设计.net基础',6),('动态网页设计php基础',6); + insert into classcourse( classid, courseid) + values(1,1),(1,2),(1,3),(1,4), + (2,1),(2,2),(2,3),(2,4), + (3,1),(3,2),(3,3),(3,5) + insert into score([studentid], [courseid], [score]) + values(1,1,80),(1,2,78),(1,3,65),(1,4,90), + (2,1,60),(2,2,77),(2,3,68),(2,4,88), + (3,1,88),(3,2,45),(3,3,66),(3,4,75), + (4,1,56),(4,2,80),(4,3,75),(4,4,66), + (5,1,88),(5,2,79),(5,3,72),(5,4,85), + (6,1,68),(6,2,88),(6,3,73),(6,5,63), + (7,1,84),(7,2,90),(7,3,92),(7,5,78), + (8,1,58),(8,2,59),(8,3,65),(8,5,75), + (9,1,48),(9,2,67),(9,3,71),(9,5,56),(9,1,48); + delete from score where scoreid=37; + update student set studentbirth='2000-04-06' where studentid = 7; + update score set score = 61 where studentid = 8 and courseid = 2; + select * from class; + select * from student; + select * from course; + select * from classcourse; + select * from score; + diff --git "a/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\345\205\253\346\254\241\344\275\234\344\270\232/\344\275\234\344\270\2321.sql" "b/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\345\205\253\346\254\241\344\275\234\344\270\232/\344\275\234\344\270\2321.sql" new file mode 100644 index 0000000000000000000000000000000000000000..ac5983e02f52866c01cc1309a9cb1cc5d7178825 --- /dev/null +++ "b/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\345\205\253\346\254\241\344\275\234\344\270\232/\344\275\234\344\270\2321.sql" @@ -0,0 +1,53 @@ +create database work1; +go +use work1; +create table stuinfo( +stuNO nchar(5) primary key, +stuName nvarchar(50) not null, +stuAge int, +stuAddress nvarchar(255) , +stuSeat int identity, +stuSex tinyint, +); +--drop table stuinfo +create table stuexam( +examNO int primary key, +stuNO nchar(5), +writtenExam int , +labExam int, +); +--drop table stuexam +insert into stuinfo(stuNO, stuName, stuAge, stuAddress,stuSex) +values('s2501','张秋利',20,'美国硅谷',1), + ('s2502','李斯文',18,'湖北武汉',0), + ('s2503','马文才',22,'湖南长沙',1), + ('s2504','欧阳俊雄',21,'湖北武汉',0), + ('s2505','梅超风',20,'湖北武汉',1), + ('s2506','陈旋风',19,'美国硅谷',1), + ('s2507','陈风',20,'美国硅谷',0) +insert into stuexam(examNO,stuNO, writtenExam, labExam) +values(1,'s2501',50,70),(2,'s2502',60,65), +(3,'s2503',86,85),(4,'s2504',40,80), +(5,'s2505',70,90),(6,'s2506',85,90) +--1.查询学生的姓名,年龄,笔试成绩和机试成绩 +select stuName,stuAge,writtenExam,labExam from +stuexam join stuinfo on stuexam.stuNO=stuinfo.stuNO +--2.查询笔试和机试成绩都在60分以上的学生的学号,姓名,笔试成绩和机试成绩 +select stuexam.stuNO,stuName,writtenExam,labExam from +stuexam join stuinfo on stuexam.stuNO=stuinfo.stuNO +where labExam>60 and writtenExam>60 +--3.查询所有学生的学号,姓名,笔试成绩,机试成绩,没有参加考试的学生的成绩以NULL值填充 +select stuexam.stuNO,stuName,writtenExam,labExam from +stuexam right join stuinfo on stuexam.stuNO=stuinfo.stuNO +--4.查询年龄在20以上(包括20)的学生的姓名,年龄,笔试成绩和机试成绩,并按笔试成绩降序排列 +select stuName,stuAge,writtenExam,labExam from +stuexam join stuinfo on stuexam.stuNO=stuinfo.stuNO +where stuAge>=20 order by stuAge desc +--5.查询男女生的机试平均分 +select stuSex,avg(writtenExam) 机试平均分 from +stuinfo join stuexam on stuinfo.stuNO=stuexam.stuNO +group by stuSex +--6.查询男女生的笔试总分 +select stuSex,sum(labExam) 笔试总分 from +stuinfo join stuexam on stuinfo.stuNO=stuexam.stuNO +group by stuSex \ No newline at end of file diff --git "a/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\345\205\253\346\254\241\344\275\234\344\270\232/\344\275\234\344\270\2322.sql" "b/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\345\205\253\346\254\241\344\275\234\344\270\232/\344\275\234\344\270\2322.sql" new file mode 100644 index 0000000000000000000000000000000000000000..91504709f4e1f3434c619c791b86d0a568564fbb --- /dev/null +++ "b/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\345\205\253\346\254\241\344\275\234\344\270\232/\344\275\234\344\270\2322.sql" @@ -0,0 +1,48 @@ +create database wark2; +go +use wark2; +create table orders( +orderId int primary key, +orderDate datetime, +); +--drop table orders +create table orderItem( +itemId int primary key identity, +orderId int , +itemType nvarchar(20), +itemName nvarchar(20), +theNumber int , +theMoney int, +); +--drop table orderItem +insert into orders(orderId,orderDate) +values (1,'2008-01-12 00:00:00.000'), +(2,'2008-02-10 00:00:00.000'), +(3,'2008-02-15 00:00:00.000'), +(4,'2008-03-10 00:00:00.000') +select * from orders + +insert into orderItem( [orderId], [itemType], [itemName], [theNumber], [theMoney]) +values(1,'文具','笔',72,2),(1,'文具','尺',10,1),(1,'体育用品','篮球',1,56), +(2,'文具','笔',36,2),(2,'文具','固体胶',20,3),(2,'日常用品','透明胶',2,1),(2,'体育用品','羽毛球',20,3), +(3,'文具','订书机',20,3),(3,'文具','订书针',10,3),(3,'文具','裁纸刀',5,5), +(4,'文具','笔',20,2),(4,'文具','信纸',50,1),(4,'日常用品','毛巾',4,5),(4,'日常用品','透明胶',30,1),(4,'体育用品','羽毛球',20,3) +select * from orderItem +--1.查询所有的订单的订单的编号,订单日期,订购产品的类别和订购的产品名称,订购数量和订购单价 +select orders.orderId,orderDate,itemType,itemName,theNumber,theMoney from +orderItem join orders on orderItem.orderId=orders.orderId +--2.查询订购数量大于50的订单的编号,订单日期,订购产品的类别和订购的产品名称 +select orders.orderId,orderDate,itemType,itemName from +orderItem join orders on orderItem.orderId=orders.orderId +where theNumber>50 +--3.查询所有的订单的订单的编号,订单日期,订购产品的类别和订购的产品名称,订购数量和订购单价以及订购总价 +select orders.orderId,orderDate,itemType,itemName,theNumber*theMoney 订购总价 from +orderItem join orders on orderItem.orderId=orders.orderId +--4.查询单价大于等于5并且数量大于等于50的订单的订单的编号,订单日期,订购产品的类别和订购的产品名称,订购数量和订购单价以及订购总价 +select orders.orderId,orderDate,itemType,itemName,theNumber*theMoney 订购总价 from +orderItem join orders on orderItem.orderId=orders.orderId +where theMoney>5 and theNumber>=50 +--5.查询每个订单分别订购了几个产品 +select orderid 编号,count(itemType) 订购产品数 from orderItem group by orderId +--6.查询每个订单里的每个类别的产品分别订购了几次和总数量 +select orderId 订单编号,itemType 产品类别,count(orderId) 订购次数,sum(theNumber) 总数量 from orderItem group by itemType,orderId diff --git "a/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\345\205\253\346\254\241\344\275\234\344\270\232/\344\275\234\344\270\2324.sql" "b/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\345\205\253\346\254\241\344\275\234\344\270\232/\344\275\234\344\270\2324.sql" new file mode 100644 index 0000000000000000000000000000000000000000..6578b55e6af9f64753c0142e40961c94e66e8266 --- /dev/null +++ "b/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\345\205\253\346\254\241\344\275\234\344\270\232/\344\275\234\344\270\2324.sql" @@ -0,0 +1,118 @@ + create database work; + go +use work; +--班级信息表 +create table class( +--班级编号 +classid int primary key identity(1,1) not null, +--班级名称 +classname nvarchar(50) not null, +); +--学生信息表 +create table student( +--学生编号 +studentid int primary key identity(1,1) not null, +--学生姓名 +studentname nvarchar(50) not null, +--学生性别 +studentsex tinyint default'3' check(studentsex='1' or studentsex='2' or studentsex='3') not null, +--学生生日 +studentbirth date, +--学生地址 +studentaddress nvarchar(255) not null, +--所属班级id +classid int default '0' not null, +); + +--课程信息表 +create table course( +--课程编号 +courseid int primary key identity(1,1) not null, +--课程名称 +coursename nvarchar(50) unique not null, +--课程学分 +coursecredit tinyint default 0 check(coursecredit>0) not null, +); + +--班级课程表 +create table classcourse( +--自增编号 +classcourseid int primary key identity(1,1) not null, +--班级编号 +classid int not null, +--课程编号 +courseid int not null, +); +--分数信息表 +create table score( +--自增编号 +scoreid int primary key identity(1,1) not null, +--学生编号 +studentid int not null, +--课程编号 +courseid int not null, +--分数 +score int check(score>0) not null, +); + + insert into class(classname) + values('软件一班'),('软件二班'),('计算机应用技术班') + insert into student( [studentname], [studentsex], [studentbirth], [studentaddress], [classid]) + values('刘正','1','2000-01-01','广西省桂林市七星区空明西路10号鸾东小区',1),('黄贵','1','2001-03-20','江西省南昌市青山湖区艾溪湖南路南150米广阳小区',1),('陈美','2','2000-07-08','福建省龙岩市新罗区曹溪街道万达小区',1); + insert into student( [studentname], [studentsex], [studentbirth], [studentaddress], [classid]) + values('江文','1','2000-08-10','安徽省合肥市庐阳区四里河路与潜山路交汇处万科城市之光',2),('钟琪','2','2001-03-21','湖南省长沙市雨花区红花坡社区',2); + insert into student( [studentname], [studentsex], [studentbirth], [studentaddress], [classid]) + values('曾小林','1','1999-12-10','安徽省合肥市庐阳区四里河路与潜山路交汇处万科城市之光',3),('欧阳天天','2','2000-04-05','湖北省武汉市洪山区友谊大道与二环线交汇处融侨悦府',3),('徐长卿','1','2001-01-30','江苏省苏州市苏州工业园区独墅湖社区',3),('李逍遥','1','1999-11-11','广东省广州市白云区金沙洲岛御洲三街恒大绿洲',3); + insert into student( [studentname], [studentsex], [studentbirth], [studentaddress]) + values('东方不败','3','1999-01-30','河北省平定州西北四十余里的猩猩滩'),('令狐冲','1','2000-08-11','陕西省渭南市华阴市玉泉路南段'); + insert into course([coursename], [coursecredit]) + values('数据库高级应用',3),('javascript编程基础',3),('web前端程序设计基础',4),('动态网页设计.net基础',6),('动态网页设计php基础',6); + insert into classcourse( classid, courseid) + values(1,1),(1,2),(1,3),(1,4), + (2,1),(2,2),(2,3),(2,4), + (3,1),(3,2),(3,3),(3,5) + insert into score([studentid], [courseid], [score]) + values(1,1,80),(1,2,78),(1,3,65),(1,4,90), + (2,1,60),(2,2,77),(2,3,68),(2,4,88), + (3,1,88),(3,2,45),(3,3,66),(3,4,75), + (4,1,56),(4,2,80),(4,3,75),(4,4,66), + (5,1,88),(5,2,79),(5,3,72),(5,4,85), + (6,1,68),(6,2,88),(6,3,73),(6,5,63), + (7,1,84),(7,2,90),(7,3,92),(7,5,78), + (8,1,58),(8,2,59),(8,3,65),(8,5,75), + (9,1,48),(9,2,67),(9,3,71),(9,5,56),(9,1,48); + delete from score where scoreid=37; + update student set studentbirth='2000-04-06' where studentid = 7; + update score set score = 61 where studentid = 8 and courseid = 2; + select * from class; + select * from student; + select * from course; + select * from classcourse; + select * from score; + --作业4 + --1. 查询 李逍遥(编号id为9) 所在的班级名称(连接查询 2表) + select studentid,classname from student join class on student.classid=class.classid where studentid=9 + --2. 查询 李逍遥(学生编号id为9) 学习的课程有哪几门,需要姓名、课程名称、课程学分(连接查询) + select studentname,coursename,coursecredit from student join classcourse on classcourse.classid=student.classid + join course on classcourse.courseid=course.courseid + where studentid=9 + --3. 查询 李逍遥(学生编号id为9) 学习的课程考试得分,需要姓名、课程名称、课程学分、得分(连接查询) + select studentname,coursename,coursecredit,score from student join classcourse on classcourse.classid=student.classid + join course on classcourse.courseid=course.courseid + join score on score.courseid=classcourse.courseid + where student.studentid=9 and score.studentid=9 + --4. 使用子查询查询 软件一班的每个学生 的平均分(聚合查询 + 子查询 + 分组) + select studentid,avg(score) 平均分 from score + where studentid in (1,2,3) + group by studentid + + + --5. 使用连接查询 软件二班的每个学生 的平均分(聚合查询 + 连接查询 + 分组) + select student.studentid,avg(score) 平均分 from score join student on student.studentid=score.studentid + where classid=2 + group by student.studentid + + --6. 按照班级查询所有课程的平均分,并且按照平均分高低进行排序。(聚合查询 + 连接查询 + 分组) + select class.classid,avg(score) 平均分 from score join classcourse on score.courseid=classcourse.courseid + join class on classcourse.classid=class.classid + group by class.classid order by avg(score) desc diff --git "a/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\345\205\253\346\254\241\344\275\234\344\270\232/\347\254\254\344\270\203\346\254\241\344\273\243\347\240\201.sql" "b/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\345\205\253\346\254\241\344\275\234\344\270\232/\347\254\254\344\270\203\346\254\241\344\273\243\347\240\201.sql" new file mode 100644 index 0000000000000000000000000000000000000000..bf2397e5cb751d25a667a59bffdbaa2793e3df30 --- /dev/null +++ "b/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\345\205\253\346\254\241\344\275\234\344\270\232/\347\254\254\344\270\203\346\254\241\344\273\243\347\240\201.sql" @@ -0,0 +1,42 @@ +create database wark2; +go +use wark2; +create table orders( +orderId int primary key, +orderDate datetime, +); +--drop table orders +create table orderItem( +itemId int primary key identity, +orderId int , +itemType nvarchar(20), +itemName nvarchar(20), +theNumber int , +theMoney int, +); +--drop table orderItem +insert into orders(orderId,orderDate) +values (1,'2008-01-12 00:00:00.000'), +(2,'2008-02-10 00:00:00.000'), +(3,'2008-02-15 00:00:00.000'), +(4,'2008-03-10 00:00:00.000') +select * from orders + +insert into orderItem( [orderId], [itemType], [itemName], [theNumber], [theMoney]) +values(1,'文具','笔',72,2),(1,'文具','尺',10,1),(1,'体育用品','篮球',1,56), +(2,'文具','笔',36,2),(2,'文具','固体胶',20,3),(2,'日常用品','透明胶',2,1),(2,'体育用品','羽毛球',20,3), +(3,'文具','订书机',20,3),(3,'文具','订书针',10,3),(3,'文具','裁纸刀',5,5), +(4,'文具','笔',20,2),(4,'文具','信纸',50,1),(4,'日常用品','毛巾',4,5),(4,'日常用品','透明胶',30,1),(4,'体育用品','羽毛球',20,3) +select * from orderItem + +select orderId,sum(theNumber) 订购物品总和 from orderItem group by orderId + +select orderId,sum(theNumber) 订购物品总和,avg(theMoney) 平均单价 from orderItem group by orderId having avg(theMoney)<10 and orderid<3 + +select orderId,sum(theNumber) 产品总数,avg(theMoney) 平均单价 from orderItem group by orderId having sum(theNumber)>50 and avg(theMoney)<10 + +select itemType,count(itemType) 订购次数 from orderItem group by itemType + +select itemType,sum(theNumber) 订购物品总和,avg(theMoney) 平均单价 from orderItem group by itemType having sum(theNumber)>100 + +select itemName 产品名称,count(itemType) 订购次数,sum(theNumber) 总数量,avg(theMoney) 平均单价 from orderItem group by itemName \ No newline at end of file diff --git "a/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\345\205\255\346\254\241\344\275\234\344\270\232/SQLQuery1.sql" "b/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\345\205\255\346\254\241\344\275\234\344\270\232/SQLQuery1.sql" new file mode 100644 index 0000000000000000000000000000000000000000..dd8b4177401980e1cb47fcca251b00d729d092a0 --- /dev/null +++ "b/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\345\205\255\346\254\241\344\275\234\344\270\232/SQLQuery1.sql" @@ -0,0 +1,57 @@ + insert into class(classname) + values('软件一班'),('软件二班'),('计算机应用技术班') + insert into student( [studentname], [studentsex], [studentbirth], [studentaddress], [classid]) + values('刘正','1','2000-01-01','广西省桂林市七星区空明西路10号鸾东小区',1),('黄贵','1','2001-03-20','江西省南昌市青山湖区艾溪湖南路南150米广阳小区',1),('陈美','2','2000-07-08','福建省龙岩市新罗区曹溪街道万达小区',1); + insert into student( [studentname], [studentsex], [studentbirth], [studentaddress], [classid]) + values('江文','1','2000-08-10','安徽省合肥市庐阳区四里河路与潜山路交汇处万科城市之光',2),('钟琪','2','2001-03-21','湖南省长沙市雨花区红花坡社区',2); + insert into student( [studentname], [studentsex], [studentbirth], [studentaddress], [classid]) + values('曾小林','1','1999-12-10','安徽省合肥市庐阳区四里河路与潜山路交汇处万科城市之光',3),('欧阳天天','2','2000-04-05','湖北省武汉市洪山区友谊大道与二环线交汇处融侨悦府',3),('徐长卿','1','2001-01-30','江苏省苏州市苏州工业园区独墅湖社区',3),('李逍遥','1','1999-11-11','广东省广州市白云区金沙洲岛御洲三街恒大绿洲',3); + insert into student( [studentname], [studentsex], [studentbirth], [studentaddress]) + values('东方不败','3','1999-01-30','河北省平定州西北四十余里的猩猩滩'),('令狐冲','1','2000-08-11','陕西省渭南市华阴市玉泉路南段'); + insert into course([coursename], [coursecredit]) + values('数据库高级应用',3),('javascript编程基础',3),('web前端程序设计基础',4),('动态网页设计.net基础',6),('动态网页设计php基础',6); + insert into classcourse( classid, courseid) + values(1,1),(1,2),(1,3),(1,4), + (2,1),(2,2),(2,3),(2,4), + (3,1),(3,2),(3,3),(3,5) + insert into score([studentid], [courseid], [score]) + values(1,1,80),(1,2,78),(1,3,65),(1,4,90), + (2,1,60),(2,2,77),(2,3,68),(2,4,88), + (3,1,88),(3,2,45),(3,3,66),(3,4,75), + (4,1,56),(4,2,80),(4,3,75),(4,4,66), + (5,1,88),(5,2,79),(5,3,72),(5,4,85), + (6,1,68),(6,2,88),(6,3,73),(6,5,63), + (7,1,84),(7,2,90),(7,3,92),(7,5,78), + (8,1,58),(8,2,59),(8,3,65),(8,5,75), + (9,1,48),(9,2,67),(9,3,71),(9,5,56),(9,1,48); + delete from score where scoreid=37; + update student set studentbirth='2000-04-06' where studentid = 7; + update score set score = 61 where studentid = 8 and courseid = 2; + select * from class; + select * from student; + select * from course; + select * from classcourse; + select * from score; + select * from course order by coursecredit desc; + select * from score order by score asc; + select * from student order by studentbirth asc; + select * from student where classid =1; + select * from student where studentsex = 2; + select * from student where studentbirth >= '2000-01-01' and StudentBirth < '2001-01-01'; + select * from student where studentname like '%欧阳%'; + select * from student where studentaddress like '%桂林市%'; + select * from student where studentname like '李__'; + select count(0) from student where classid = 1; + select count(0) from classcourse where classid = 1; + select sum(score) from Score where StudentId = 1; + select * from Score where CourseId = 1; + select sum(score) as 总分,count(0) as 学生总数 from score where courseid = 1; + select avg(score) from score where courseId = 1; + select * from score; + select studentid, sum(score) as TotalScore from score group by studentId; + select * from Score; + select studentId, avg(score) as TotalScore from score group by studentId; + select * from Score; + select studentId, avg(score) as AvgScore from score group by studentId order by AvgScore desc; + select * from Score; + select studentId, avg(score) as AvgScore from score group by studentId having avg(Score) > 80 ; \ No newline at end of file diff --git "a/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\345\205\255\346\254\241\344\275\234\344\270\232/\347\254\254\345\205\255\346\254\241\344\275\234\344\270\232\357\274\2101\357\274\211.sql" "b/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\345\205\255\346\254\241\344\275\234\344\270\232/\347\254\254\345\205\255\346\254\241\344\275\234\344\270\232\357\274\2101\357\274\211.sql" new file mode 100644 index 0000000000000000000000000000000000000000..2874a5f8f48635adb546e227a51561b688d76737 --- /dev/null +++ "b/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\345\205\255\346\254\241\344\275\234\344\270\232/\347\254\254\345\205\255\346\254\241\344\275\234\344\270\232\357\274\2101\357\274\211.sql" @@ -0,0 +1,67 @@ +create database work1; +go +use work1; +create table stuinfo( +stuNO nchar(5) primary key, +stuName nvarchar(50) not null, +stuAge int, +stuAddress nvarchar(255) , +stuSeat int identity, +stuSex tinyint, +); +--drop table stuinfo +create table stuexam( +examNO int primary key, +stuNO nchar(5), +writtenExam int , +labExam int, +); +--drop table stuexam +insert into stuinfo(stuNO, stuName, stuAge, stuAddress,stuSex) +values('s2501','张秋利',20,'美国硅谷',1), + ('s2502','李斯文',18,'湖北武汉',0), + ('s2503','马文才',22,'湖南长沙',1), + ('s2504','欧阳俊雄',21,'湖北武汉',0), + ('s2505','梅超风',20,'湖北武汉',1), + ('s2506','陈旋风',19,'美国硅谷',1), + ('s2507','陈风',20,'美国硅谷',0) +insert into stuexam(examNO,stuNO, writtenExam, labExam) +values(1,'s2501',50,70),(2,'s2502',60,65), +(3,'s2503',86,85),(4,'s2504',40,80), +(5,'s2505',70,90),(6,'s2506',85,90) + +select stuNO as 学生编号, stuName as 学生姓名,stuAge as 学生年龄,stuAddress as 生源地址,stuSeat as 学生座位, stuSex as 学生性别 from stuinfo +select stuName as 学生姓名,stuAge as 学生年龄,stuAddress as 生源地址 from stuinfo +select stuNO as 学号,writtenExam 笔试,机试=labExam from stuexam +select stuNO as 学号, stuName as 学生姓名 , stuAddress as 生源地址,concat(stuName ,'@',stuAddress) as 学生邮箱 from stuinfo +select stuName+'@'+stuAddress 邮箱 from stuinfo +select stuNO as 学号,writtenExam 笔试,机试=labExam ,cast(writtenExam+labExam As int) as 总分 from stuexam +select distinct stuAddress 生源地址 from stuinfo +select distinct stuAge 学生年龄段 from stuinfo +select top 3 * from stuinfo +select top 4 stuName as 学生姓名,stuSeat as 学生座位 from stuinfo +select top 50 percent * from stuinfo +select * from stuinfo where stuAddress='湖北武汉' and stuAge=20 +select * from stuexam where labExam>=60 and labExam<=80 order by labExam desc +select * from stuexam where labExam between '60' and '80' order by labExam desc +select * from stuinfo where stuAddress='湖北武汉' or stuAddress='湖南长沙' +--select * from stuinfo where stuAddress between '湖北武汉' and '湖南长沙' +select * from stuinfo where stuAddress in('湖北武汉','湖南长沙') +select * from stuexam where writtenExam<70 or writtenExam>90 order by writtenExam asc +select * from stuexam where writtenExam not between '70' and '90' order by writtenExam asc +select * from stuinfo where stuAge is null +select * from stuinfo where stuAge is not null +select * from stuinfo where stuAddress like '%湖%' +select * from stuinfo where stuName like '张_' +select * from stuinfo where stuName like '__俊%' +select * from stuinfo order by stuAge desc +select * from stuinfo order by stuAge desc ,stuSeat asc +select examNO,stuNO ,writtenExam,labExam from stuexam where writtenExam=(select max(writtenExam) from stuexam ) +select examNO,stuNO,writtenExam,labExam from stuexam where labExam=(select min(labExam)from stuexam) +select top 1 * from stuexam order by writtenExam desc +select top 1 * from stuexam order by labExam asc +select stuAddress,avg(stuAge) stuAge from stuinfo group by stuAddress +select stuSex,sum(stuAge) stuAge from stuinfo group by stuSex +select stuSex,stuAddress,avg(stuAge) 平均年龄,sum(stuAge) 年龄总和 from stuinfo group by stuSex,stuAddress + + diff --git "a/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\345\215\201\344\270\200\346\254\241\344\275\234\344\270\232/\346\227\245\346\234\237\345\207\275\346\225\260(1).sql" "b/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\345\215\201\344\270\200\346\254\241\344\275\234\344\270\232/\346\227\245\346\234\237\345\207\275\346\225\260(1).sql" new file mode 100644 index 0000000000000000000000000000000000000000..44fb6ed96795cf1f23257c8e474c79d928ff8c79 --- /dev/null +++ "b/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\345\215\201\344\270\200\346\254\241\344\275\234\344\270\232/\346\227\245\346\234\237\345\207\275\346\225\260(1).sql" @@ -0,0 +1,165 @@ +create database work2; +go +use work2; +create table Class( + ClassId int not null identity(1,1), + ClassName nvarchar(50) not null unique +); +go + +create table Student ( + StudentId int not null identity(1, 1), + StudentName nvarchar(50), + StudentSex tinyint not null default'3' check(studentsex='1' or studentsex='2' or studentsex='3'), + StudentBirth date, + StudentAddress nvarchar(255) not null, + ClassId int not null +); +go +create table Course( + CourseId int identity(1,1), + CourseName nvarchar(50) unique, + CourseCredit int check(CourseCredit>0) +); +go + +create table ClassCourse( + ClassCourseId int identity(1,1), + ClassId int default'0', + CourseId int +); +go + +create table Score( + ScoreId int identity(1,1), + StudentId int, + CourseId int, + Score int check(Score>=0) +); +go +alter table student add StudentidentityCard varchar(20) not null default'' +alter table score add IsResit tinyint not null default'0' + +insert into Class (ClassName) values ('软件一班'); +insert into Class (ClassName) values ('软件二班'); +insert into Class (ClassName) values ('计算机应用技术班'); + +insert into Student (StudentName, StudentSex, StudentBirth, StudentAddress, ClassId) + values ('刘正',1,'2000-01-01','广西省桂林市七星区空明西路10号鸾东小区', 1); +insert into Student (StudentName, StudentSex, StudentBirth, StudentAddress, ClassId) + values ('黄贵',1,'2001-03-20','江西省南昌市青山湖区艾溪湖南路南150米广阳小区', 1); +insert into Student (StudentName, StudentSex, StudentBirth, StudentAddress, ClassId) + values ('陈美',2,'2000-07-08','福建省龙岩市新罗区曹溪街道万达小区', 1); + +insert into Student (StudentName, StudentSex, StudentBirth, StudentAddress, ClassId) + values ('江文',1,'2000-08-10','安徽省合肥市庐阳区四里河路与潜山路交汇处万科城市之光', 2); +insert into Student (StudentName, StudentSex, StudentBirth, StudentAddress, ClassId) + values ('钟琪',2,'2001-03-21','湖南省长沙市雨花区红花坡社区', 2); + +insert into Student (StudentName, StudentSex, StudentBirth, StudentAddress, ClassId) + values ('曾小林',1,'1999-12-10','安徽省合肥市庐阳区四里河路与潜山路交汇处万科城市之光', 3); +insert into Student (StudentName, StudentSex, StudentBirth, StudentAddress, ClassId) + values ('欧阳天天',2,'2000-04-05','湖北省武汉市洪山区友谊大道与二环线交汇处融侨悦府', 3); +insert into Student (StudentName, StudentSex, StudentBirth, StudentAddress, ClassId) + values ('徐长卿',1,'2001-01-30','江苏省苏州市苏州工业园区独墅湖社区', 3); +insert into Student (StudentName, StudentSex, StudentBirth, StudentAddress, ClassId) + values ('李逍遥',1,'1999-11-11','广东省广州市白云区金沙洲岛御洲三街恒大绿洲', 3); +insert into Student( StudentName, StudentSex, StudentBirth, StudentAddress) +values('东方不败', 2,'1999-12-11','河北省平定州西北四十余里的猩猩滩'), + ('令狐冲',1,'2000-08-11','陕西省渭南市华阴市玉泉路南段'); + +insert into Course(CourseName, CourseCredit) values ('数据库高级应用', 3); +insert into Course(CourseName, CourseCredit) values ('javascript编程基础', 3); +insert into Course(CourseName, CourseCredit) values ('web前端程序设计基础', 4); +insert into Course(CourseName, CourseCredit) values ('动态网页设计.net基础', 6); + +insert into ClassCourse (ClassId, CourseId) values (1, 1); +insert into ClassCourse (ClassId, CourseId) values (1, 2); +insert into ClassCourse (ClassId, CourseId) values (1, 3); +insert into ClassCourse (ClassId, CourseId) values (1, 4); + +insert into ClassCourse (ClassId, CourseId) values (2, 1); +insert into ClassCourse (ClassId, CourseId) values (2, 2); +insert into ClassCourse (ClassId, CourseId) values (2, 3); +insert into ClassCourse (ClassId, CourseId) values (2, 4); + +insert into Course(CourseName, CourseCredit) values ('动态网页设计php基础', 6); + +insert into ClassCourse (ClassId, CourseId) values (3, 1); +insert into ClassCourse (ClassId, CourseId) values (3, 2); +insert into ClassCourse (ClassId, CourseId) values (3, 3); +insert into ClassCourse (ClassId, CourseId) values (3, 5); + +insert into Score (StudentId, CourseId, Score) values (1, 1, 80); +insert into Score (StudentId, CourseId, Score) values (1, 2, 78); +insert into Score (StudentId, CourseId, Score) values (1, 3, 65); +insert into Score (StudentId, CourseId, Score) values (1, 4, 90); + +insert into Score (StudentId, CourseId, Score) values (2, 1, 60); +insert into Score (StudentId, CourseId, Score) values (2, 2, 77); +insert into Score (StudentId, CourseId, Score) values (2, 3, 68); +insert into Score (StudentId, CourseId, Score) values (2, 4, 88); + +insert into Score (StudentId, CourseId, Score) values (3, 1, 88); +insert into Score (StudentId, CourseId, Score) values (3, 2, 45); +insert into Score (StudentId, CourseId, Score) values (3, 3, 66); +insert into Score (StudentId, CourseId, Score) values (3, 4, 75); +go +insert into Score (StudentId, CourseId, Score) values (4, 1, 56); +insert into Score (StudentId, CourseId, Score) values (4, 2, 80); +insert into Score (StudentId, CourseId, Score) values (4, 3, 75); +insert into Score (StudentId, CourseId, Score) values (4, 4, 66); + +insert into Score (StudentId, CourseId, Score) values (5, 1, 88); +insert into Score (StudentId, CourseId, Score) values (5, 2, 79); +insert into Score (StudentId, CourseId, Score) values (5, 3, 72); +insert into Score (StudentId, CourseId, Score) values (5, 4, 85); + +insert into Score (StudentId, CourseId, Score) values (6, 1, 68); +insert into Score (StudentId, CourseId, Score) values (6, 2, 88); +insert into Score (StudentId, CourseId, Score) values (6, 3, 73); +insert into Score (StudentId, CourseId, Score) values (6, 5, 63); + +insert into Score (StudentId, CourseId, Score) values (7, 1, 84); +insert into Score (StudentId, CourseId, Score) values (7, 2, 90); +insert into Score (StudentId, CourseId, Score) values (7, 3, 92); +insert into Score (StudentId, CourseId, Score) values (7, 5, 78); + +insert into Score (StudentId, CourseId, Score) values (8, 1, 58); +insert into Score (StudentId, CourseId, Score) values (8, 2, 59); +insert into Score (StudentId, CourseId, Score) values (8, 3, 65); +insert into Score (StudentId, CourseId, Score) values (8, 5, 75); + +insert into Score (StudentId, CourseId, Score) values (9, 1, 48); +insert into Score (StudentId, CourseId, Score) values (9, 2, 67); +insert into Score (StudentId, CourseId, Score) values (9, 3, 71); +insert into Score (StudentId, CourseId, Score) values (9, 5, 56); +insert into Score (StudentId, CourseId, Score) values (9, 1, 48); + +insert into Score (StudentId,CourseId,Score) values(10,1,null); +insert into Score (StudentId,CourseId,Score) values(10,2,null); +go + +--日期函数练习 +---------------------- +--1.获取当前系统时间 +select getdate() +--2.获取本月的第一天 +select dateadd(month,datediff(month,0,getdate()),0) +--3.获取本月的最后一天 +select dateadd(month,datediff(month,0,getdate())+1,0)-1 +--3.获取下个月的第一天 +select dateadd(month,datediff(month,0,getdate())+1,0) +--4.获取本周的 第一天 +select dateadd(week,datediff(week,0,getdate()),-1) +--5.获取本周的最后一天 +select dateadd(week,datediff(week,0,getdate())+1,-1)-1 +--6.查询学生的出生年份信息 +select distinct year(StudentBirth) from Student +--7.查询学生信息:姓名,年龄(年龄用datediff函数进行计算) +select *,datediff(year,StudentBirth,getdate()) 年龄 from Student +--8.查询本月生日的学生信息:学号,姓名,出生日期,年龄 +select StudentId 学号,StudentName 姓名, StudentBirth 出生日期, +(year(getdate())-year(StudentBirth)) 年龄 from Student where month(StudentBirth)=month(getdate()) +--9.查询下个月生日的学生信息 +select * from Student where month(StudentBirth)=month(getdate())+1 diff --git "a/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\345\215\201\346\254\241\344\275\234\344\270\232/\346\227\245\346\234\237\345\207\275\346\225\260(1).sql" "b/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\345\215\201\346\254\241\344\275\234\344\270\232/\346\227\245\346\234\237\345\207\275\346\225\260(1).sql" new file mode 100644 index 0000000000000000000000000000000000000000..44fb6ed96795cf1f23257c8e474c79d928ff8c79 --- /dev/null +++ "b/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\345\215\201\346\254\241\344\275\234\344\270\232/\346\227\245\346\234\237\345\207\275\346\225\260(1).sql" @@ -0,0 +1,165 @@ +create database work2; +go +use work2; +create table Class( + ClassId int not null identity(1,1), + ClassName nvarchar(50) not null unique +); +go + +create table Student ( + StudentId int not null identity(1, 1), + StudentName nvarchar(50), + StudentSex tinyint not null default'3' check(studentsex='1' or studentsex='2' or studentsex='3'), + StudentBirth date, + StudentAddress nvarchar(255) not null, + ClassId int not null +); +go +create table Course( + CourseId int identity(1,1), + CourseName nvarchar(50) unique, + CourseCredit int check(CourseCredit>0) +); +go + +create table ClassCourse( + ClassCourseId int identity(1,1), + ClassId int default'0', + CourseId int +); +go + +create table Score( + ScoreId int identity(1,1), + StudentId int, + CourseId int, + Score int check(Score>=0) +); +go +alter table student add StudentidentityCard varchar(20) not null default'' +alter table score add IsResit tinyint not null default'0' + +insert into Class (ClassName) values ('软件一班'); +insert into Class (ClassName) values ('软件二班'); +insert into Class (ClassName) values ('计算机应用技术班'); + +insert into Student (StudentName, StudentSex, StudentBirth, StudentAddress, ClassId) + values ('刘正',1,'2000-01-01','广西省桂林市七星区空明西路10号鸾东小区', 1); +insert into Student (StudentName, StudentSex, StudentBirth, StudentAddress, ClassId) + values ('黄贵',1,'2001-03-20','江西省南昌市青山湖区艾溪湖南路南150米广阳小区', 1); +insert into Student (StudentName, StudentSex, StudentBirth, StudentAddress, ClassId) + values ('陈美',2,'2000-07-08','福建省龙岩市新罗区曹溪街道万达小区', 1); + +insert into Student (StudentName, StudentSex, StudentBirth, StudentAddress, ClassId) + values ('江文',1,'2000-08-10','安徽省合肥市庐阳区四里河路与潜山路交汇处万科城市之光', 2); +insert into Student (StudentName, StudentSex, StudentBirth, StudentAddress, ClassId) + values ('钟琪',2,'2001-03-21','湖南省长沙市雨花区红花坡社区', 2); + +insert into Student (StudentName, StudentSex, StudentBirth, StudentAddress, ClassId) + values ('曾小林',1,'1999-12-10','安徽省合肥市庐阳区四里河路与潜山路交汇处万科城市之光', 3); +insert into Student (StudentName, StudentSex, StudentBirth, StudentAddress, ClassId) + values ('欧阳天天',2,'2000-04-05','湖北省武汉市洪山区友谊大道与二环线交汇处融侨悦府', 3); +insert into Student (StudentName, StudentSex, StudentBirth, StudentAddress, ClassId) + values ('徐长卿',1,'2001-01-30','江苏省苏州市苏州工业园区独墅湖社区', 3); +insert into Student (StudentName, StudentSex, StudentBirth, StudentAddress, ClassId) + values ('李逍遥',1,'1999-11-11','广东省广州市白云区金沙洲岛御洲三街恒大绿洲', 3); +insert into Student( StudentName, StudentSex, StudentBirth, StudentAddress) +values('东方不败', 2,'1999-12-11','河北省平定州西北四十余里的猩猩滩'), + ('令狐冲',1,'2000-08-11','陕西省渭南市华阴市玉泉路南段'); + +insert into Course(CourseName, CourseCredit) values ('数据库高级应用', 3); +insert into Course(CourseName, CourseCredit) values ('javascript编程基础', 3); +insert into Course(CourseName, CourseCredit) values ('web前端程序设计基础', 4); +insert into Course(CourseName, CourseCredit) values ('动态网页设计.net基础', 6); + +insert into ClassCourse (ClassId, CourseId) values (1, 1); +insert into ClassCourse (ClassId, CourseId) values (1, 2); +insert into ClassCourse (ClassId, CourseId) values (1, 3); +insert into ClassCourse (ClassId, CourseId) values (1, 4); + +insert into ClassCourse (ClassId, CourseId) values (2, 1); +insert into ClassCourse (ClassId, CourseId) values (2, 2); +insert into ClassCourse (ClassId, CourseId) values (2, 3); +insert into ClassCourse (ClassId, CourseId) values (2, 4); + +insert into Course(CourseName, CourseCredit) values ('动态网页设计php基础', 6); + +insert into ClassCourse (ClassId, CourseId) values (3, 1); +insert into ClassCourse (ClassId, CourseId) values (3, 2); +insert into ClassCourse (ClassId, CourseId) values (3, 3); +insert into ClassCourse (ClassId, CourseId) values (3, 5); + +insert into Score (StudentId, CourseId, Score) values (1, 1, 80); +insert into Score (StudentId, CourseId, Score) values (1, 2, 78); +insert into Score (StudentId, CourseId, Score) values (1, 3, 65); +insert into Score (StudentId, CourseId, Score) values (1, 4, 90); + +insert into Score (StudentId, CourseId, Score) values (2, 1, 60); +insert into Score (StudentId, CourseId, Score) values (2, 2, 77); +insert into Score (StudentId, CourseId, Score) values (2, 3, 68); +insert into Score (StudentId, CourseId, Score) values (2, 4, 88); + +insert into Score (StudentId, CourseId, Score) values (3, 1, 88); +insert into Score (StudentId, CourseId, Score) values (3, 2, 45); +insert into Score (StudentId, CourseId, Score) values (3, 3, 66); +insert into Score (StudentId, CourseId, Score) values (3, 4, 75); +go +insert into Score (StudentId, CourseId, Score) values (4, 1, 56); +insert into Score (StudentId, CourseId, Score) values (4, 2, 80); +insert into Score (StudentId, CourseId, Score) values (4, 3, 75); +insert into Score (StudentId, CourseId, Score) values (4, 4, 66); + +insert into Score (StudentId, CourseId, Score) values (5, 1, 88); +insert into Score (StudentId, CourseId, Score) values (5, 2, 79); +insert into Score (StudentId, CourseId, Score) values (5, 3, 72); +insert into Score (StudentId, CourseId, Score) values (5, 4, 85); + +insert into Score (StudentId, CourseId, Score) values (6, 1, 68); +insert into Score (StudentId, CourseId, Score) values (6, 2, 88); +insert into Score (StudentId, CourseId, Score) values (6, 3, 73); +insert into Score (StudentId, CourseId, Score) values (6, 5, 63); + +insert into Score (StudentId, CourseId, Score) values (7, 1, 84); +insert into Score (StudentId, CourseId, Score) values (7, 2, 90); +insert into Score (StudentId, CourseId, Score) values (7, 3, 92); +insert into Score (StudentId, CourseId, Score) values (7, 5, 78); + +insert into Score (StudentId, CourseId, Score) values (8, 1, 58); +insert into Score (StudentId, CourseId, Score) values (8, 2, 59); +insert into Score (StudentId, CourseId, Score) values (8, 3, 65); +insert into Score (StudentId, CourseId, Score) values (8, 5, 75); + +insert into Score (StudentId, CourseId, Score) values (9, 1, 48); +insert into Score (StudentId, CourseId, Score) values (9, 2, 67); +insert into Score (StudentId, CourseId, Score) values (9, 3, 71); +insert into Score (StudentId, CourseId, Score) values (9, 5, 56); +insert into Score (StudentId, CourseId, Score) values (9, 1, 48); + +insert into Score (StudentId,CourseId,Score) values(10,1,null); +insert into Score (StudentId,CourseId,Score) values(10,2,null); +go + +--日期函数练习 +---------------------- +--1.获取当前系统时间 +select getdate() +--2.获取本月的第一天 +select dateadd(month,datediff(month,0,getdate()),0) +--3.获取本月的最后一天 +select dateadd(month,datediff(month,0,getdate())+1,0)-1 +--3.获取下个月的第一天 +select dateadd(month,datediff(month,0,getdate())+1,0) +--4.获取本周的 第一天 +select dateadd(week,datediff(week,0,getdate()),-1) +--5.获取本周的最后一天 +select dateadd(week,datediff(week,0,getdate())+1,-1)-1 +--6.查询学生的出生年份信息 +select distinct year(StudentBirth) from Student +--7.查询学生信息:姓名,年龄(年龄用datediff函数进行计算) +select *,datediff(year,StudentBirth,getdate()) 年龄 from Student +--8.查询本月生日的学生信息:学号,姓名,出生日期,年龄 +select StudentId 学号,StudentName 姓名, StudentBirth 出生日期, +(year(getdate())-year(StudentBirth)) 年龄 from Student where month(StudentBirth)=month(getdate()) +--9.查询下个月生日的学生信息 +select * from Student where month(StudentBirth)=month(getdate())+1 diff --git "a/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\345\215\201\346\254\241\344\275\234\344\270\232/\347\273\203\344\271\240\344\272\214\357\274\2101\357\274\211.sql" "b/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\345\215\201\346\254\241\344\275\234\344\270\232/\347\273\203\344\271\240\344\272\214\357\274\2101\357\274\211.sql" new file mode 100644 index 0000000000000000000000000000000000000000..e59b6c00022af9dba1a114a3440d139b99959529 --- /dev/null +++ "b/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\345\215\201\346\254\241\344\275\234\344\270\232/\347\273\203\344\271\240\344\272\214\357\274\2101\357\274\211.sql" @@ -0,0 +1,118 @@ +create database work; +go +use work; + + +create table stuinfo( +stuid int identity(1,1) primary key , +stuname nchar(10) , +stuage int, +stusex nchar(1) default '' check(stusex=1 or stusex=0) , +stutime time , +); +go + +create table courseinfo( +courseid int identity(1,1) primary key, +coursename nchar(20), +coursemarks int , +); +go + +create table scores( +scoreid int identity(1,1) primary key, +stuid int, +courseid int , +score int, +); +go + +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 scores(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 scores.stuid 学号,count(scores.courseid) 数量,avg(score) 平均分 from scores +join stuinfo on scores.stuid=stuinfo.stuid +group by scores.stuid; + +--2.查询出每门课程的选修的学生的个数和学生考试的总分 +select courseinfo.courseid 课程号,count(stuinfo.stuid) 学生个数,sum(score) 总分 from stuinfo +inner join scores on stuinfo.stuid=scores.stuid +inner join courseinfo on courseinfo.courseid=scores.courseid +group by courseinfo.courseid + + + +--3.查询出性别一样并且年龄一样的学生的信息 +select distinct(a1.stuname) 姓名,a1.stusex 性别,a1.stuage 年龄 from stuinfo a join stuinfo a1 +on a.stuage= a1.stuage and a.stusex=a1.stusex +where a.stuid<>a1.stuid + +--4.查询出学分一样的课程信息 +select distinct w.coursename 课程名,w.coursemarks 学分 from courseinfo w join courseinfo w1 +on w.coursemarks=w1.coursemarks +where w.courseid<>w1.courseid + +--5.查询出参加了考试的学生的学号,姓名,课程号和分数 +select stuinfo.stuid 学号,stuname 姓名,courseinfo.courseid 课程号,score 分数 from stuinfo +inner join scores on scores.stuid=stuinfo.stuid +inner join courseinfo on courseinfo.courseid=scores.courseid + + +--6.查询出参加了考试的学生的学号,课程号,课程名,课程学分和分数 +select stuinfo.stuid 学号,courseinfo.courseid 课程号,coursename 课程名,coursemarks 课程学分,score 分数 from stuinfo +inner join scores on scores.stuid=stuinfo.stuid +inner join courseinfo on courseinfo.courseid=scores.courseid + + +--7.查询出没有参加考试的学生的学号和姓名 +select stuinfo.stuid 学号,stuname 姓名 from stuinfo +left join scores on stuinfo.stuid=scores.stuid +where scores.score is null + +--8.查询出是周六周天来报到的学生 + + +--9.查询出姓名中有字母a的学生的信息 +select * from stuinfo +where stuname like '%a%'; + +--10.查询出选修了2门课程以上的并且考试平均分在70以上的学生的学号和考试平均分以及选修课程的数量 +select count(scores.courseid) 选修课程数,avg(score) 平均分 from stuinfo +inner join scores on scores.stuid=stuinfo.stuid +group by scores.stuid +having avg(score)>70 and count(scores.courseid)>2 + + + + + + + + + diff --git "a/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\345\215\201\346\254\241\344\275\234\344\270\232/\347\273\203\344\271\240\344\272\214\357\274\2102\357\274\211.sql" "b/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\345\215\201\346\254\241\344\275\234\344\270\232/\347\273\203\344\271\240\344\272\214\357\274\2102\357\274\211.sql" new file mode 100644 index 0000000000000000000000000000000000000000..044430068afaf23a44d729f1f9e26c10223ea8b3 --- /dev/null +++ "b/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\345\215\201\346\254\241\344\275\234\344\270\232/\347\273\203\344\271\240\344\272\214\357\274\2102\357\274\211.sql" @@ -0,0 +1,92 @@ +create database work1; +go +use work1; + +create table tbl_card( +id varchar(20) primary key, +passWord varchar(50) , +balance money, +username nvarchar(50) not null, +); +go +create table tbl_computer( +id varchar(20) primary key , +onUse tinyint check(onUse=0 or onUse=1) , +note varchar(20), +); +go +create table tbl_record( +id int primary key, +cardId varchar(20) references tbl_card(id), +computerId varchar(20) references tbl_computer(id), +begintime datetime , +endtime datetime , +fee money , +); +go + +insert into tbl_card(id,passWord,balance,username) +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(id, onUse, 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','2007-12-25 22:00:00',23), + (45,'0023_ABC','03','2006-12-23 15:26:00','2007-12-23 22:55:00',50), + (46,'0023_ABC','03','2006-12-22 15:26:00','2007-12-22 22:55:00',6), + (47,'0023_ABC','03','2006-12-23 15:26:00','2007-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','2007-07-21 22:55:00',50), + (64,'0078_RJV','04','2006-12-24 18:00:00','2007-12-24 22:00:00',300), + (65,'0025_bbd','02','2006-12-28 18:00:00','2007-12-28 22:00:00',23), + (98,'0025_bbd','02','2006-12-26 18:00:00','2007-12-26 22:00:00',23) + +--1. 查询出用户名为'张军'的上网卡的上网记录,要求显示卡号,用户名,机器编号、开始时间、结束时间,和消费金额,并按消费金额降序排列 +select cardId,username,computerId,begintime,endtime,fee from tbl_card as a1 +join tbl_record as a2 on a1.id=a2.cardId +where username='张军' order by fee desc + +--2. 查询出每台机器上的上网次数和消费的总金额 +select computerId,count(computerid)上网次数,sum(fee) 消费总金额 from tbl_record +group by computerId + +--3. 查询出所有已经使用过的上网卡的消费总金额 +select cardId,count(computerid)上网次数,sum(fee) 消费总金额 from tbl_record +group by cardId + +--4. 查询出从未消费过的上网卡的卡号和用户名 +select a1.id,username from tbl_card as a1 +left join tbl_record as a2 on a1.id=a2.cardId +where a2.fee is null + +--5. 将密码与用户名一样的上网卡信息查询出来 +select distinct * from tbl_card +where id=passWord + +--6. 查询出使用次数最多的机器号和使用次数 +select top 1 computerId,count(computerId) 使用次数 +from tbl_record group by computerId order by count(computerId) desc + +--7. 查询出卡号是以'ABC'结尾的卡号,用户名,上网的机器号和消费金额 +select cardid,username,computerid,fee from tbl_card as a +join tbl_record as a1 on a.id=a1.cardId where cardId like '%ABC' + +--8. 查询出是周六、周天上网的记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select cardid 卡号,username 用户名,computerid 机器号,begintime 开始时间,endtime 结束时间,fee 消费金额 +from tbl_record inner join tbl_card on tbl_record.cardid=tbl_card.id +where datepart(weekday,cast(tbl_record.begintime as date)) in (1,7) + +--9. 查询成一次上网时间超过12小时的的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 +select cardid 卡号,username 用户名,computerid 机器号,begintime 开始时间,endtime 结束时间,fee 消费金额 +from tbl_record inner join tbl_card on tbl_record.cardid=tbl_card.id where (begintime-endtime)>'12:00:00' + +--10. 查询除消费金额排列前三名(最高)的上网记录,要求显示上网的卡号,用户名,机器号,开始时间、结束时间和消费金额 + select top 3 cardid,username,computerid,begintime,endtime,fee from tbl_card join tbl_record on tbl_card.id=tbl_record.cardId + order by fee desc + diff --git "a/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\345\233\233\346\254\241\344\275\234\344\270\232/SQLQuery1.sql" "b/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\345\233\233\346\254\241\344\275\234\344\270\232/SQLQuery1.sql" new file mode 100644 index 0000000000000000000000000000000000000000..e0c48f550aa0f7ef03a1203f2cf407829ab822a3 --- /dev/null +++ "b/06\347\274\252\346\242\223\344\272\250\344\275\234\344\270\232/\347\254\254\345\233\233\346\254\241\344\275\234\344\270\232/SQLQuery1.sql" @@ -0,0 +1,34 @@ +create database work2 +use work2 + +--账号信息表 +create table Accountinfo( +Accountid int identity primary key not null,--账户编号 +foreign key(Accountid) references Accountinfo(Accountid), +AccountCode varchar(20) unique not null,--身份证号码 +AccountPhone varchar(20) not null,--电话号码 +RealName varchar(20) not null,--真实姓名 +); +alter table Accountinfo add OpenTime smalldatetime not null --开户时间 + + +--银行卡表 +create table BankCard( +CardNo varchar(30) primary key,--银行卡号 +foreign key(CardNo) references BankCard(CardNo), +Accountid int not null,--账户编码 +CardPwd varchar (30) not null,--银行密码 +CardBalance money default'0.00' not null,--银行卡余额 +CardState tinyint default'1' not null,--银行卡状态:1正常;2挂失;3冻结;4注销 +CardTime varchar(30) default getdate() not null,--开卡时间 +); + + +--交易信息表 +create table CardExchange( +Exchangid int identity primary key,--交易编号 +CardNo varchar(30) not null,--银行卡号 +MoneyinBank money check(MoneyinBank>='0') not null, --存取金额 +MoneyOutBank money check(MoneyinBank>='0') not null,--取钱金额 +ExchangeTime smalldatetime default getdate() not null,--交易时间 +); diff --git a/README.en.md b/README.en.md deleted file mode 100644 index eda3d5b79f71a1de090080089bb70c9125dbc9d3..0000000000000000000000000000000000000000 --- a/README.en.md +++ /dev/null @@ -1,36 +0,0 @@ -# 鏁版嵁搴撶殑浣滀笟 - -#### Description -{**When you're done, you can delete the content in this README and update the file with details for others getting started with your repository**} - -#### Software Architecture -Software architecture description - -#### Installation - -1. xxxx -2. xxxx -3. xxxx - -#### Instructions - -1. xxxx -2. xxxx -3. xxxx - -#### Contribution - -1. Fork the repository -2. Create Feat_xxx branch -3. Commit your code -4. Create Pull Request - - -#### Gitee Feature - -1. You can use Readme\_XXX.md to support different languages, such as Readme\_en.md, Readme\_zh.md -2. Gitee blog [blog.gitee.com](https://blog.gitee.com) -3. Explore open source project [https://gitee.com/explore](https://gitee.com/explore) -4. The most valuable open source project [GVP](https://gitee.com/gvp) -5. The manual of Gitee [https://gitee.com/help](https://gitee.com/help) -6. The most popular members [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/) diff --git a/README.md b/README.md deleted file mode 100644 index e48879534d127bdc0add162e0aaedd8b33e91db4..0000000000000000000000000000000000000000 --- a/README.md +++ /dev/null @@ -1,39 +0,0 @@ -# 鏁版嵁搴撶殑浣滀笟 - -#### 浠嬬粛 -{**浠ヤ笅鏄 Gitee 骞冲彴璇存槑锛屾偍鍙互鏇挎崲姝ょ畝浠** -Gitee 鏄 OSCHINA 鎺ㄥ嚭鐨勫熀浜 Git 鐨勪唬鐮佹墭绠″钩鍙帮紙鍚屾椂鏀寔 SVN锛夈備笓涓哄紑鍙戣呮彁渚涚ǔ瀹氥侀珮鏁堛佸畨鍏ㄧ殑浜戠杞欢寮鍙戝崗浣滃钩鍙 -鏃犺鏄釜浜恒佸洟闃熴佹垨鏄紒涓氾紝閮借兘澶熺敤 Gitee 瀹炵幇浠g爜鎵樼銆侀」鐩鐞嗐佸崗浣滃紑鍙戙備紒涓氶」鐩鐪 [https://gitee.com/enterprises](https://gitee.com/enterprises)} - -#### 杞欢鏋舵瀯 -杞欢鏋舵瀯璇存槑 - - -#### 瀹夎鏁欑▼ - -1. xxxx -2. xxxx -3. xxxx - -#### 浣跨敤璇存槑 - -1. xxxx -2. xxxx -3. xxxx - -#### 鍙備笌璐$尞 - -1. Fork 鏈粨搴 -2. 鏂板缓 Feat_xxx 鍒嗘敮 -3. 鎻愪氦浠g爜 -4. 鏂板缓 Pull Request - - -#### 鐗规妧 - -1. 浣跨敤 Readme\_XXX.md 鏉ユ敮鎸佷笉鍚岀殑璇█锛屼緥濡 Readme\_en.md, Readme\_zh.md -2. Gitee 瀹樻柟鍗氬 [blog.gitee.com](https://blog.gitee.com) -3. 浣犲彲浠 [https://gitee.com/explore](https://gitee.com/explore) 杩欎釜鍦板潃鏉ヤ簡瑙 Gitee 涓婄殑浼樼寮婧愰」鐩 -4. [GVP](https://gitee.com/gvp) 鍏ㄧО鏄 Gitee 鏈鏈変环鍊煎紑婧愰」鐩紝鏄患鍚堣瘎瀹氬嚭鐨勪紭绉寮婧愰」鐩 -5. Gitee 瀹樻柟鎻愪緵鐨勪娇鐢ㄦ墜鍐 [https://gitee.com/help](https://gitee.com/help) -6. Gitee 灏侀潰浜虹墿鏄竴妗g敤鏉ュ睍绀 Gitee 浼氬憳椋庨噰鐨勬爮鐩 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)