SQL中部分语法整理

时间:2022-01-15 21:49:29

  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