SQL必知必会

  • 第一章 了解SQL
  1. 数据库:(个人理解就是我们电脑上的文件夹)
    1. 数据库是保存有组织数据的容器
    2. 人们通常用数据这个术语来代表他们使用的数据库软件,确切的说,数据库软件应该被称为数据库管理系统,数据库是通过DBMS创建和操作的容器。
    3. client----->dbms-----control------>db
  2. 表:(我们放入文件夹中的文件,不同的数据放在不同的文件中)
    1. 表示一种结构化的文件,可以用来存储某种特定类型的数据。
    2. 关键点在于,存储在表中的数据是同一种类型的数据
    3. 数据库中每个表都有一个名字来标识自己,这个名字是唯一的,即数据库中没有其他表具有相同的名字。(我们也不能在一个文件夹里放两个相同文件名的文件,否则会提示你是要覆盖还是替换,当然如果在两个文件夹中放入同名文件是可以的)
    4. 模式:数据库和表的布局及特性信息
  3. 列和数据类型
    1. 表是由列组成,它代表了表中的一个字段,所有表都是由一个列或多个列组成。
    2. 数据库中每一列都有相应的数据类型,数据类型定义了列可以存储哪些种类的数据,数据类型限定了可存储在列中的数据种类,数据类型还帮助正确的分类数据,并在优化磁盘使用方面起到重要的作用。
    3. 数据类型及其名称是SQL不兼容的一个主要原因。
    1. 表中的一个记录
  4. 主键
    1. 表中每一行都应该有一列可以唯一标识自己。
    2. 主键可以使一列也可以是多列,其值能唯一标识自己。
    3. 没有主键,更新或删除表中特定行就极为困难。
    4. 作为主键的条件:
      1. 唯一非空,且不能修改,删除后不能复用。
  5. 什么是SQL
    1. SQL是与数据库交互的一种语言。
    2. 优点:
      1. 学习SQL:几乎所有重要的DBMS都支持SQL
      2. 简单易学
      3. SQL是一种强有力的语言
  • 第二章 select语句
  1. select语句它的用途是从一个或多个表中检索出数据

  2. 关键字:作为SQL的保留字,不能用于数据库,表和列的名字。(被官方征用了)

  3. 检索单个列

    SELECT 列名
    FROM 表名;
    
    举个🌰:
    SELECT id
    FROM info;
    

    如果没有明确查询结果的顺序,它的显示就是无序的,可能是你添加记录时的顺序也可能不是,SQL语句是不区分大小写的,建议关键字使用大写,列名等使用小写,这样易于阅读与调试。在处理SQL语句时,其中所有的空格都被忽略,所以可以写成长长的一行,也可能分行写。

  4. 检索多个列

    SELECT 列1,列2....
    FROM 表名;
    
    举个🌰:
    SELECT id,name
    FROM info;
    

    选择多个列时,一定要在列名之间加上逗号,但最后一个列名后不加,否则会出现错误

  5. 检索所有列

    SELECT *
    FROM 表名;
    
    举个🌰:
    SELECT * 
    FROM t1;
    

    *是通配符,代表所有

  6. 记录去重

    SELECT DISTINCT 列名....
    FROM 表名;
    举个🌰:
    SELECT DSTINCT id
    FROM info;
    

    distinct作用于所有列,不仅仅是跟在其后的那一列

  7. 限制显示结果

    #不同的DBMS使用的关键字不同,这里只记录SQL server和MySQL
    #SQL server
    SELECT TOP 记录数 列名....
    FROM 表名;
    #MySQL
    SELECT 列名
    FROM 表名 LIMIT 记录数
    SELECT 列名
    FROM 表名 LIMIT 记录数START,记录数
    #在MySQL中第一个被检索的行是第0行,而不是第一行。
    举个🌰:
    SELECT * FROM tt LIMIT 3 #前三行
    SELECT * SELECT tt SELECT 0,3 #从第0行开始的三行记录
    
  8. 使用注释

    -- 这是一条注释
    #这是一条注释
    /*行*/ 可以注释多行
    
posted on 2020-04-11 21:46  littleSUKI  阅读(147)  评论(0)    收藏  举报