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--规定没有给列赋值时的默认值

时间: 2024-10-11 07:43:36

SQL之相关语法及操作符的相关文章

SQL 之相关语法及操作符

概述:UNION.SELECT INTO.INSERT INTO SELECT.SQL 约束. UNION操作符 UNION 操作符用于合并两个或多个 SELECT 语句的结果集. 请注意,UNION 内部的每个 SELECT 语句必须拥有相同数量的列.列也必须拥有相似的数据类型.同时,每个 SELECT 语句中的列的顺序必须相同. 默认地,UNION 操作符选取不同的值.如果允许重复的值,请使用 UNION ALL. 语法: SELECT column_name(s) FROM table1

SQL[连载2]语法及相关实例

SQL语法 数据库表 一个数据库通常包含一个或多个表.每个表由一个名字标识(例如:"Websites"),表包含带有数据的记录(行). 在本教程中,我们在 MySQL 的 RUNOOB 数据库中中创建了 Websites 表,由于存储网站记录. 我们可以通过以下命令查看 "Websites" 表的数据: mysql> use RUNOOB; Database changed mysql> set names utf8; Query OK, 0 rows

SQL UNION 和 UNION ALL 操作符

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 操作符选取不同的值.如果允许重复的

Atitit.sql ast 表达式 语法树 语法 解析原理与实现 java php c#.net js python

Atitit.sql ast 表达式 语法树 语法 解析原理与实现 java php c#.net js python 1.1. Sql语法树 ast 如下图锁死1 2. SQL语句解析的思路和过程3 2.1. lexer作为一个工具,完成了对SQL字符串的切割,将语句转化成一个tokens数组.3 2.2. Parser完成了SQL解析的后序部分:使用一个lexer对象作为工具,切出tokens,然后解析语义,绑定相关的系统接口.3 2.3. 关系数据和XML数据库下其抽象语法树分别为: 如图

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]

SQL UNION 和 UNION ALL 操作符\SQL SELECT INTO 语句\SQL CREATE DATABASE 语句

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 操作符选取不同的值.如果允许重复的

SQlite数据库相关语法知识

1.SQLite3是一款开源的嵌入式关系型数据库,可移植性好.易使用.内存开销比较小 SQLite3是无类型的,意味着你可以保存任何类型的数据到任意表的任意字段中 2. SQLite3常用的5种数据类型:text(文本).integer(整型).real(浮点值).blob(二进制) 3. 在iOS中使用SQLite3,首先要添加库文件libsqlite3.dylib和导入主头文件 4. 创建或打开数据库 // path为:~/Documents/person.db sqlite3 *db; i

SQL的高级语法

TOP 子句 TOP 子句用于规定要返回的记录的数目. 对于拥有数千条记录的大型表来说,TOP 子句是非常有用的. SQL Server 的语法: SELECT TOP number|percent column_name(s) FROM table_name SELECT TOP 1000 [id] ,[code] ,[colltime] ,[quality] ,[curvalue] FROM [web_v20].[dbo].[dat_col_data] 我们希望从 "Persons"

对于SQL的Join,在学习起来可能是比较乱的。我们知道,SQL的Join语法有很多inner的,有outer的,有left的,有时候,对于Select出来的结果集是什么样子有点不是很清楚。Coding?Horror上有一篇文章,通过文氏图?Venn?diagrams?解释了SQL的Join。我觉得清楚易懂,转过来。

对于SQL的Join,在学习起来可能是比较乱的.我们知道,SQL的Join语法有很多inner的,有outer的,有left的,有时候,对于Select出来的结果集是什么样子有点不是很清楚.Coding Horror上有一篇文章,通过文氏图 Venn diagrams 解释了SQL的Join.我觉得清楚易懂,转过来. 假设我们有两张表.Table A 是左边的表.Table B 是右边的表.其各有四条记录,其中有两条记录name是相同的,如下所示:让我们看看不同JOIN的不同. A表 id na