SQL__关键字(三)

一、内容:

  • SQL ALTER TABLE 语句
  • SQL AUTO INCREMENT 字段
  • SQL Views(视图)
  • SQL Date(日期) 函数
  • SQL NULL值
  • SQL NULL 函数
  • SQL 通用数据类型
  • SQL DB 数据类型

二、具体内容:

  • SQL ALTER TABLE 语句

    ALTER TABLE 语句用于在已有的表中添加、删除或修改列。

    • SQL ALTER TABLE语法:

      如需在表中添加列,如下:

      ALTER TABLE table_name
      ADD column_name datatype
      

      如需删除表中的列,如下:

      ALTER TABLE table_name
      DROP COLUMN column_name
      
      #注:某些数据系统不允许这种在数据库中删除列的方式
      

      改变表中列的数据类型,如下:

      1. SQL Server / MS Access:

        ALTER TABLE table_name
        ALTER COLUMN column_name datatype
        
      2. My SQL / Oracle:

        ALTER TABLE table_name
        MODIFY COLUMN column_name datatype
        
  • SQL AUTO INCREMENT 字段

    Auto-increment 会在新纪录插入表中时生成一个唯一的数字。

    • 用于MySQL 的语法

      把SQL语句把“Persons”表中的“ID”列定义为 auto-increment主键字段:

      CREATE TABLE Persons
      (
      ID int NOT NULL AUTO_INCREMENT,
      LastName varchar(255) NOT NULL,
      FirstName varchar(255),
      Address varchar(255),
      City varchar(255),
      PRIMARY KEY(ID)
      )
      

      MySQL 使用 AUTO_INCREMENT 关键字来执行 auto-increment任务。

      默认地, AUTO_INCREMENT的开始值是1,每条新纪录递增1.

      要让 AUTO_INCREMENT序列以其他的值起始,请使用如下SQL语法:

      ALTER TABLE Persons  AUTO_INCREMENT=100
      

      要再“Persons”表中插入新纪录,不必为“ID”列规定值(会自动添加一个唯一的值):

      INSERT INTO Persons (FirstName,LastName) 
      VALUES (‘Lars‘,‘Monsen‘)
      

      上面的 SQL 语句会在 "Persons" 表中插入一条新记录。"ID" 列会被赋予一个唯一的值。"FirstName" 列会被设置为 "Lars","LastName" 列会被设置为 "Monsen"。

  • SQL Views(视图)

    视图是可视化的表。

    1. SQL CREATE VIEW语句

      视图包含行和列,就像一个真实的表,视图中的字段就是来自 一个或多个数据库中的真实的表中的字段。

      可以向视图添加SQL函数,WHERE以及JOIN语句,也可以呈现数据,就像这些数据来自于某个单一的表一样。

      • SQL CREATE VIEW语法:

        CREATE VIEW view_name AS
        SELECT column_name(s)
        FROM table_name
        WHERE condition
        
    2. SQL 更新视图

      可以使用下面的语法来更新视图。

      • SQL CREATE OR REPLACE VIEW 语法:

        CREATE OR REPLACE VIEW view_name AS
        SELECT column_name(s)
        FROM table_name
        WHERE condition
        
    3. SQL 撤销视图

      可以通过DROP VIEW命令来撤销视图。

      • SQL DROP VIEW 语法:

        DROP VIEW view_name
        
  • SQL Date(日期) 函数

    1. MySQL Date 函数

      下面的表格列出了MySQL 中最重要的内建日期函数:

      函数 描述
      NOW() 返回当前的日期和时间
      CURDATE() 返回当前的日期
      CURTIME() 返回当前的时间
      DATE() 提取日期或日期/时间表达式的日期部分
      EXTRACT() 返回日期/时间的单独部分
      DATE_ADD() 向日期添加指定的时间间隔
      DATE_SUB() 从日期减去指定的时间间隔
      DATEDIFF() 返回两个日期之间的天数
      DATE_FORMAT() 用不同的格式显示日期/时间
    2. SQL Server Date函数

      下面的表格列出了SQL Server 中最重要的内建日期函数:

      函数 描述
      GETDATE() 返回当前的日期和时间
      DATEPART() 返回日期/时间的单独部分
      DATEADD() 在日期中添加或减去指定的时间间隔
      DATEDIFF() 返回两个日期之间的时间
      CONVERT() 用不同的格式显示日期/时间
    3. SQL Date 数据类型

      1. MySQL

        使用下列数据类型在数据库中存储日期或日期/时间值:

        • DATE -格式 :YYYY-MM-DD
        • DATETIME - 格式:YYYY-MM-DD HH:MM:SS
        • TIMESTAMP - 格式:YYYY-MM-DD HH:MM:SS
        • YEAR - 格式:YYYY 或 YY
      2. SQL Server

        • DATE -格式 :YYYY-MM-DD
        • DATETIME - 格式:YYYY-MM-DD HH:MM:SS
        • SMALLDATETIME - 格式:YYYY-MM-DD HH:MM:SS
        • TIMESTAMP - 格式:唯一的数字
  • SQL NULL值

    NULL值代表遗漏的未知数据。

    表的列可以存放NULL值。

    NULL值的处理方式与其他值不同。

    NULL用作未知的或不适用的值的占位符。

    • SQL IS NULL

      #选取在“Address”列中带有NULL值的记录
      SELECT LastName,FirstName,Address FROM Persons
      WHERE Address IS NULL;
      
    • SQL IS NOT NULL

      #选取在“Address”列中不带有NULL值的记录
      SELECT LastName,FirstName,Address FROM Persons
      WHERE Address IS NOT NULL;
      
  • SQL NULL 函数

    SQL ISNULL() 、NVL() 、 IFNULL() 和 COALESCE() 函数:

    微软的 ISNULL() 函数用于规定如何处理 NULL 值。

    NVL()、IFNULL() 和 COALESCE() 函数也可以达到相同的结果。

  • SQL 通用数据类型

    数据类型定义列中存放的值的种类。

    数据库表中的每个列都要求 有名称和数据类型。

  • SQL DB 数据类型

    在MySQL中,有三种主要的类型:Text(文本)、 Number(数字) 和 Date/Time(日期/时间) 类型。

SQL__关键字(三)

上一篇:SQL Server 中的over子句详解


下一篇:Mysql复制表的几种方法