SQL之相关语法及操作符

概述:UNION、SELECT INTO、INSERT INTO SELECT、SQL约束

UNION操作符

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

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

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

语法:

SELECT column_name(s) FROM table1

UNION ALL

SELECT column_name(s) FROM table2;

--UNION 结果集中的列名总是等于UNION中第一个SELECT 语句中的列名

 

SELECT INTO语句

通过SQL,您可以从一个表赋值信息到另一个表

SELECT INTO语句从一个表复制数据,然后把数据插入到另一个新表中

语法:

--新表将会使用SELECT语句中定义的列名称和类型进行创建。您可以使用AS子句来应用新名称

SELECT * INTO newtable FROM table1    --我们可以复制所有的列插入到新表中

SELECT column1,column 2 INTO newtable FROM table1--或者只复制希望的列插入到新表中

SELECT Websites.name,access_log.count,access_log.date INTO WebsitesBackup2016 FROM Websites LEFT JOIN access_log

on Websites.id=access_log.site_id     --复制多个表中的数据插入到新表中

SELECT * INTO newtable FROM table1 WHERE 1=0     --SELECT INTO 语句可用于通过另一种模式创建一个新的空表。只需要添加促使查询没有数据返回的WHERE子句即可

 

SQL约束

SQL约束用于规定表中的数据规则

如果存在违反约束的数据行为,行为会被约束终止

约束可以在创建表时规定(通过CREATE TABLE语句),或者在表创建之后规定(通过ALTER TABLE语句)

在SQL中,我们有如下约束:

NOT NULL -指示某列不能存储NULL值

UNIQUE-保证某列的每行必须有唯一的值

PRIMARY KEY -NOT NULL 和UNIQUE的结合。确保某列(或两个多个列的结合)有唯一标识,有助于更容易更快速地找到表中的一个特定的记录

FOREIGN KEY 保证一个表中的数据匹配另一个表中的值的参照完整性

CHECK --保证列中的值符合指定的条件

DEFAULT--规定没有给列赋值时的默认值

 

posted @ 2017-06-27 10:15  维尼熊320  阅读(146)  评论(0编辑  收藏  举报