目录
[1. Retrieve](#1. Retrieve)
[1.2 Select](#1.2 Select)
[1.2.2 use](#1.2.2 use)
[1.2.3 指定列查询](#1.2.3 指定列查询)
[1.2.4 select+固定值](#1.2.4 select+固定值)
[1.2.5 列值修改查询](#1.2.5 列值修改查询)
[1.2.6 别名](#1.2.6 别名)
[1.2.7 查询结果去重](#1.2.7 查询结果去重)
在前面的文章中我们链接了表的增删操作,今天我们来聊一下表的查找与修改操作。
1. Retrieve
首先我们要了解到Retrieve不是某一个具体的指令,它描述的是 "从数据库表中获取数据" 这一行为本身,而实现这种行为的具体技术手段是 SQL 中的
SELECT语句。也就是说,SELECT是实现 "Retrieve" 目标的核心工具,而 "Retrieve" 是对这一数据获取过程的抽象描述。
1.2 Select
select是我们查询的基础,可以说基本上使用查询都要建立在它的基础上。
1.2.1全列插入
语法:
            
            
              sql
              
              
            
          
          SELECT * FROM 表名;我们来看,在SQL里面,这个星号(*)意思就是说无条件,结合前面的select就是说全部拿出来。
from的意思就是从哪个表里面去数据。
我们看下面这张图,我们这行指令的意思就是说从t7里面吧所有数据全部都取出来。

1.2.2 use
语法:
            
            
              sql
              
              
            
          
          use 库名差点忘记说了, 我们想要使用某一个表的时候,我们要先让系统知道我们使用的是哪一个数据库。
所以我们要先use一下,然后在使用我们的查找。就像下面这张图一样。

1.2.3 指定列查询
语法:
            
            
              sql
              
              
            
          
          SELECT 想要查询的列名 FROM 表名;其实从语法上来说都是一样的,区别就是把星号(*)给换成我们想要查找的列名。
我们看下面这张图,这样我们就可以查找到我们想要得到的列了。

1.2.4 select+固定值
语法:
            
            
              sql
              
              
            
          
          SELECT 固定值 FROM 表名;说实话,我们不知道这个的作用是什么,在目前的我看来,感觉这个是没什么用的。
我们看下面这张图,如果只是输入一个固定值的话,有没有 from 表名 其实都是无所谓的。加或者不加语法上都是可以通过的。

但是如果我们想要想下面这样,加上表里面的书记那么就必须要加上表名了。

1.2.5 列值修改查询
语法:
            
            
              sql
              
              
            
          
          SELECT 想要查询的列名+或-值 FROM 表名;这个的话也比较简单,就是可以在我们想要select的列名后面加或者减值。

当然我们也可以把两个或者多个列来进行相加减。

1.2.6 别名
语法:
            
            
              sql
              
              
            
          
          select 想要查询的列 别名 from 表名;我们看下面这张图,这样就给a1+a2取了别名。

1.2.7 查询结果去重
语法:
            
            
              sql
              
              
            
          
          select distinct 想要查询的列名 FROM 表名;这个的话很简单就是去重,把重复的去除掉。
下面这张图是我创建的新表,接下来我会用这张表来进行讲解。

我们看下面这张图,当我们加入distinct后,那么多的哪一行就不见了。但是a1的那个3还是有两个,这是因为我们的distinct是要求被查询出来的结果全部一样的时候才会去重。

我们看下面这张图,如果我们只查询a1的话,那么多的那个3就会被去重掉。
