码迷,mamicode.com
首页 > 其他好文 > 详细

练习-----查询

时间:2016-05-28 17:30:48      阅读:260      评论:0      收藏:0      [点我收藏+]

标签:

一、建表

 1 create table student   #学生表
 2 (
 3   Sno varchar(20) primary key,  #学号,主键
 4   Sname varchar(20) not null,    #学生姓名
 5   Ssex varchar(20) not null,     #学生性别
 6    Sbirthday datetime,       #学生出生日期
 7    Class varchar(20)     #学生所在班级
 8 );
 9 
10 create table Teacher     #教师表
11 (
12    Tno varchar(20) primary key ,    #教职工编号,主键
13     Tnam varchar(20) not null,   #教职工姓名
14     Tsex varchar(20) not null,  #教职工性别
15     Tbirthday datetime,    # 教职工出生年月
16      Prof varchar (20),      #职称
17      Depart varchar(20)not null    #教职工所在部门
18 );
19 
20 create table Course   #课程表
21 (
22    Con varchar(20) primary key,  #课程号,主键
23     Cname varchar(20) not null,   #课程名称
24     Tno varchar(20) not null,   #教职工
25     foreign key(Tno)references Teacher(Tno)    #教工编号,外键
26 ); 
27 #           从表的列名                      主表的列名
28 
29 
30 create table Score   #成绩表
31 (
32    Sno varchar(20) not null,
33    foreign key(Sno) references Student(Sno) , #学号,外键
34    Con varchar(20) not null,  #组合主键  
35    Degree Decimal(4,1) ,      #Degree  成绩   
36    foreign key(Con) references Course(Con) ,   #课程号,外键
37    primary key (Sno,Con)       #成绩
38 );
39 #values  值的意思
40 
41 
42 
43 
44 #Student表
45 insert into Student values(‘108‘,‘曾华‘,‘男‘,‘1977-09-01‘,‘95033‘);  
46 insert into Student values(‘105‘,‘匡明‘,‘男‘,‘1975-10-02‘,‘95031‘);
47 insert into Student values(‘107‘,‘王丽‘,‘女‘,‘1976-01-23‘,‘95033‘);
48 insert into Student values(‘101‘,‘李军‘,‘男‘,‘1976-02-20‘,‘95033‘);
49 insert into Student values(‘109‘,‘王芳‘,‘女‘,‘1975-02-10‘,‘95031‘);
50 insert into Student values(‘103‘,‘陆君‘,‘男‘,‘1974-06-03‘,‘95031‘);
51 
52 
53 
54 
55  #Teacher表
56 insert into Teacher values(‘804‘,‘李诚‘,‘男‘,‘1958-12-02‘,‘副教授‘,‘计算机系‘);
57 insert into Teacher values(‘856‘,‘张旭‘,‘男‘,‘1969-03-12‘,‘讲师‘,‘电子工程系‘);
58 insert into Teacher values(‘825‘,‘王萍‘,‘女‘,‘1972-05-05‘,‘助教‘,‘计算机系‘);
59 insert into Teacher values(‘831‘,‘刘冰‘,‘女‘,‘1977-08-14‘,‘助教‘,‘电子工程系‘);
60 
61 
62 
63 #Course    课程表
64 insert into Course values(‘3-105‘,‘计算机导论‘,‘825‘);
65 insert into Course values(‘3-245‘,‘操作系统‘,‘804‘);
66 insert into Course values(‘6-166‘,‘数字电路‘,‘856‘);
67 insert into Course values(‘9-888‘,‘高等数学‘,‘831‘);
68  
69 
70 
71 #Score    成绩表
72 insert into Score values(‘103‘,‘3-245‘,‘86‘);
73 insert into Score values(‘105‘,‘3-245‘,‘75‘);
74 insert into Score values(‘109‘,‘3-245‘,‘68‘);
75 insert into Score values(‘103‘,‘3-105‘,‘92‘);
76 insert into Score values(‘105‘,‘3-105‘,‘88‘);
77 insert into Score values(‘109‘,‘3-105‘,‘76‘);
78 insert into Score values(‘101‘,‘3-105‘,‘64‘);
79 insert into Score values(‘107‘,‘3-105‘,‘91‘);
80 insert into Score values(‘108‘,‘3-105‘,‘78‘);
81 insert into Score values(‘101‘,‘6-166‘,‘85‘);
82 insert into Score values(‘107‘,‘6-166‘,‘79‘);
83 insert into Score values(‘108‘,‘6-166‘,‘81‘);

 

 查询题:

1、查询Student表中的所有记录的Sname、Ssex和Class列。
      #运用知识点:select 列名1,列名2,列名3... from 表名

 select Sname,Ssex,Class from Student

 

2、 查询教师所有的单位即不重复的Depart列。
       #去重查询:select distinct 列名 from  表名          

       #查出Teacher表中的Depart列  加上distinct关键字就是去重复

 select distinct Depart from Teacher 

 

3、 查询Student表的所有记录。
       #select * from 表名     *整个标的所有列

select * from Student

 

4、 查询Score表中成绩在60到80之间的所有记录。
       # 范围查询: select * from 表名 where Price between 范围值 and 范围值

select * from Score where Degree between 60 and 80

 

5、 查询Score表中成绩为85,86或88的记录。
        #离散查询:select * from 表名 where 要查的列名 in (要查的数值1,数值2,数值3)

select * from Score where Degree in (85,86,88)

 

6、 查询Student表中“95031”班或性别为“女”的同学记录。

#所有的班级的学生
select * from student
#"95031”班的学生
select * from student where class=‘95031‘
#找出95031”班的女学生 。用and关键字 来查找95031板的女生 。 就一个女学生。
select * from student where class=‘95031‘ and Ssex=‘女‘

 

 select * from Student where Class=‘95031‘ and Ssex=‘女‘ 

 

 

7、 以Class降序查询Student表的所有记录。    

#desc降序    排序 order by查找

 

#select * from 表名 order by 列名 desc

 

select * from Student order by Class desc 

 

 

8、 以Cno升序、Degree降序查询Score表的所有记录。

          #在Score表,里查

         #根据两个条件来排序。asc升序

         #两个条件 :Cno升序、Degree降序

 select * from Score order by Cno asc , Degree desc     

 

练习-----查询

标签:

原文地址:http://www.cnblogs.com/yuyu1993/p/5537808.html

踩
(0)
赞
(0)
   
举报
评论 一句话评论(0)
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!