数据库——查询

来源:互联网 发布:windows api开发详解 编辑:程序博客网 时间:2024/06/06 07:09

查询是数据库中最重要的应用,查询语句是SQL中最核心的语句,查询语句有是变化最多,最复杂的语句。

一:认识查询

二:查询的基础语句

三:嵌套查询

四:查询的注意知识点

五:实践

【认识查询】      查询就是按照一定的条件要求输出数据库中的数据。使用查询可以查看数据,更改数据,和查询数据。

  查询包括三个部分:   查什么:需要查询的字段,这些字段可能来自一个表或者多个表,也可以来自某一个查询的结果

                                                 怎么查:这里是指查询的条件

                                                  怎么输出:输出哪些字段,什么样的排序等等

【基础语句】

                        Select    字段

                        From   表名

                        Where     条件语句

                        Group  by   字段   [ having   条件]

                        Order by   字段   [asc  |  desc ]

【嵌套查询】有时候查询条件不是简单地变量表达式,需要以其他的查询结果最为这个查询的条件,简单地说是查询里边还有一个查询,我们把最先求的那个查询叫做子查询,

  查询的时候由里到外的查询。这样的复杂查询叫做嵌套查询

嵌套查询可以用于解决多个表查询,但是主查询输出的字段必须来自于一个表

 

具体的应用在实践中再体会

【零散知识点】  1:去掉重复的字段使用distinct 

                                     2:between    and    ,and,   in    的用法

举个例子:25岁到30岁

  Age    >=25 and    age   <=40   或者    between  25  and  40    

有多个对象的时候用in   是使用最多最方便的

【实践】以后都用这个例子,

建立一个学生选课系统

建立一个stu_cou  的数据库

数据库里有三个表单

学生表

属性名

数据类型

可否为空

约束要求

学号

Char

主键

姓名

Varchar

 

性别

Char

 

年龄

Tinyint

 

所在系

char

 

 

 课程表

属性名

数据类型

可否为空

含义

课程号

Char

主键

课程名

Varchar

不能为空

先行课

Varchar

 

   

   选课表

属性名

数据类型

可否为空

含义

学号

Char

外键

课程号

Char

外键

成绩

tinyint

大于0,小于100

 

到这一步,数据库和数据表就建好了(详细过程略)

下一步,输入数据


执行成功以后的结果


Sc  表


student 表


Course 表


开始进入到查询阶段:举两个典型的例子

1:查询计算机系的学生的姓名和学号


分析,查询需要输出的是学号sno 和 姓名sname

这是一个从多个表里的查询,如果需要多个表,需要把表先建立期连接

2:查询选修了数据库应用技术的学生的学号和姓名


这个查询相对比较复杂。

查询条件1:不是计算机系的2:年龄比计算机系的都要小。

【思考】

看书看视频  和实际操作是不一样的,真正去实践一下有利于更好的掌握,而且你还会收货很多,调试的能力也非常的重要。

 

0 0