SQL中部分语法整理

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL中部分语法整理相关的知识,希望对你有一定的参考价值。

1.SELECT DISTINCT 语句

 关键词DISTINCT用于返回唯一不同的值。

    语法:

    SELECT DISTINCT 列名称 FROM 表名称

2.SELECT INTO语句

    SELECT INTO语句从一个表中选取数据,然后把数据插入另一个表中。

    SELECT INTO语句常用于创建表的备份复件或者用于对记录进行存档。

    SQL SELECT INTO语法

    把所有的列插入新表: 

    SELECT *

    INTO new_table_name [IN externaldatabase]

    FROM old_tablename

    或者只把希望的列插入新表:

    SELECT column_name(s)

    INTO new_table_name [IN externaldatabase]

    FROM old_tablename

    其中,IN子句可用于向另一个数据库中拷贝表:

    示例: SELECT * INTO Persons  IN  ‘Backup.mdb‘  FROM  Persons

 如果我们希望拷贝某些域,可以在SELECT语句后列出这些域:

    示例:SELECT LastName,FirstName INTO Persons_backup From Persons

3.SQL UNION操作符

    UNION操作符用于合并两个或多个SELECT语句的结果集。

    请注意,UNION内部的SELECT语句必须拥有相同数量的列。列也必须拥有相似的数据类型。

    同时,每条SELECT语句中的列的顺序必须相同。

    SQL UNION语法

    SELECT column_name(s) from table_name1

    UNION 

    SELECT column_name(s) from table_name2

    默认地,UNION操作符选取不同的值。如果允许重复的值,请使用UNION ALL。

    SQL UNION ALL语法

    SELECT column_name(s) FROM table_name1

    UNION ALL

    SELECT column_name(s) FROM table_name2

    另外,UNION结果集中的列名总是等于UNION中第一个SELECT语句中的列名.

4.SQL JOIN 

    SQL join用于根据两个或多个表中的列之间的关系,从这些表中查询数据。

    Join和Key

    有时为了得到完整的结果,我们需要从两个或更多的表中获取结果。我们就需要执行join。

    数据库中的表可通过键将彼此联系起来。主键(Primary Key)是一个列,在这个列中的每一行的值都是唯一的。

    在表中,每个主键的值都是唯一的。这样做的目的是在不重复每个表中的所有数据的情况下,把表间的数据交叉捆绑在一起。

    不同的SQL JOIN

    下面列出了你可以使用的JOIN类型,以及它们之间的差异。

  • JOIN:如果表中有至少一个匹配,则返回行
  • LEFT JOIN:即使右表中没有匹配,也从左表返回所有的行
  • RIGHT JOIN:即使左表中没有匹配,也从右表返回所有的行
  • FULL JOIN:只要其中一个表存在匹配,就返回行     

5.SQL INNER JOIN关键字

    在表中存在至少一个匹配时,INNER JOIN关键字返回行

    INNER JOIN关键字语法

    SELECT column_name(s)

    FROM table_name1

    INNER JOIN table_name2

    ON table_name1.column_name = table_name2.column_name

6.SQL LEFT JOIN关键字

    LEFT JOIN关键字会从左表那里返回所有的行,即使在右表(table_name2)中没有匹配的行。

    LEFT JOIN关键字语法

    SELECT column_name(s)

    FROM table_name1

    LEFT JOIN table_name2

    ON table_name1.column_name = table_name2.column_name

    注释:在某些数据库中,LEFT JOIN称为LEFT OUTER JOIN

  (未完,待续....)



以上是关于SQL中部分语法整理的主要内容,如果未能解决你的问题,请参考以下文章

MySQL过年没有回老家,在出租屋里整理了一些思维导图

MySQL过年没有回老家,在出租屋里整理了一些思维导图

MYSQL SQL模式 (未完成)

系统运维系列 之MySQL部分学习整理1

Mysql 会导致锁表的语法

SQL记录-PLSQL基本语法与数据类型