INNER JION,...FULL JOIN, UNION,UNION ALL,INTO,CREATE DATABASE(TABLE),NOT NULL.

GO ON ---(SQL高级)

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

SELECT 列名称 FROM  表名称1   INNER JOIN  表名称2     ON 表1.列名= 表名2.列名  ;

SELECT colunm_name FROM table_name1 INNER JOIN table_name2 ON table_name1.column_name = table_name2.column_name

注释:inner join 与join是相同的。


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

SELECT 列名称 FROM  表名称1   LEFT  JOIN 表名称2    ON 表1.列名=表2.列名;

SELECT colunm_name FROM table_name1 INNER LEFT JOIN table_name2 ON table_name1.column_name=table_name2.column_name

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

eg:SELECT Person.Lastname,Person.Firstname,Orders.OrderNo FROM Person LEFT JOIN Orders ON Person.person_Id=Orders.Order_Id    ORDER BY Person.Lastname


*RIGHT JOIN/FULL JOIN 语法同上

RIGHT JOIN 从右边那里返回所有的行,即使左表上没有匹配的行。

SELECT 列名称  FROM  表名1    RIGHT  JOIN  表名2  ON 表1.列名=表2.列名;


FULL JOIN  返回左表与右表所有的行。

SELECT 列名称 FROM 表名1  FULL JOIN 表名2   ON  表1.列名=表2.列名;


SQL UNION 和 UNION ALL 操作符

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

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

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

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

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

select  列名(s) from 表1   UNION  select 列名(s) from 表2;

SELECT column_name FROM table_name1 UNION SELECT column_name FROM table_name2


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


SQL UNION ALL

SELECT column_name FROM table_name1 UNION ALL SELECT  column_name FROM table_name2

select 列名(s)from 表1  UNION ALL select 列名(s) from 表2;

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

啊哈... 因为世界杯去玩嗨了,法国队拿了冠军... 结果... 第一球还是乌龙球....o(╯□╰)o


SQL SELECT INTO 语句(可用于创建表的备份复件)

SELECT * INTO new_table_name [IN exrernaldatabase] (另外一个数据库)FROM old_table_name

select * into 新表名  [ IN externaldatabase] from 旧表名;---------创建表的备份复件

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

SELECT cloumn_name INTO new_table_name[IN externaldatabase] FROM old_table_name

select  列名 INTO 新表明 [IN externaldatabase] from 就表名;----把希望的列插入到新表

例。制作 "Persons" 表的备份复件

SELECT * INTO Persons_backup FROM Persons

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

SELECT * INTO Persons     IN 'Backup.mdb' FROM Persons;---向另一个数据库拷贝表

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

select lastname,firstname into persons_backup from persons;

带有 WHERE 子句,

下面的列子通过从''persons''表中提取居住在''ChengDU‘’的人的信息,创建一个带有两个列的名为''persons_backup''的表:

SELECT Lastname, Firstname INTO Persons_backup FROM Persons WHERE City='ChengDU';

-----被连接的表:

从一个以上的表中选取数据也是可以做到的

下面的例子会创建一个名为''persons_order_backup''的新表,其中包含了从persons和orders两个表中取得的信息:

SELECT Person.Lastname,Orders.OrderNo       INTO Person_Order_backup        FROM Person     INNER JOIN Orders       ON Person.Id_p=Orders.Id_p;

SQL CREATE DATABASE 语句 用于添加数据库。

eg:CREAT DATABASE database_name;

希望创建一个名为MY_db的数据库。

CREAT DATABASE MY_db;

SQL CREATE TABLE 语句(用于创建数据库中的表)

CREAT TABLE 表名称

(

列名称1 数据类型,

列名称2 数据类型,

列名称3 数据类型,

......

);

数据类型(data_type)规定了列可容纳何种数据类型。下面的表格包含了SQL中最常用的数据类型:

图片来自W3C

创建名为 "Person" 的表。该表包含 5 个列,列名分别是:"Id_P"、"LastName"、"FirstName"、"Address" 以及 "City"

CREAT TABLE Person

(

Id_P int,

Lastname   varchar(255),

Firstname   varchar(255),

Address   varchar(255),

City      varchar(255)

)

Id_P 列的数据类型是 int,包含整数。其余 4 列的数据类型是 varchar,最大长度为 255 个字符。


SQL 约束 (Constraints) :约束用于限制加入表的数据的类型

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

NOT NULL

UNIQUE

PRIMARY KEY

FOREIGN KEY

CHECK

DEFAULT

SQL NOT NULL 约束

NOT NULL 约束强制列不接受 NULL 值。NOT NULL 约束强制字段始终包含值。这意味着,如果不向字段添加值,就无法插入新记录或者更新记录。

CREAT TABLE Person

(

Id_p int NOT NULL,

Lastname varchar(255) NOT NULL,

Firstname varchar(255), 

City varchar(255)

)

(′-ω-`)  emm... 先到这,下班回家煮火锅去啦啦~~

INNER JION,...FULL JOIN, UNION,UNION ALL,INTO,CREATE DATABASE(TABLE),NOT NULL._第1张图片

來源:

著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

你可能感兴趣的:(INNER JION,...FULL JOIN, UNION,UNION ALL,INTO,CREATE DATABASE(TABLE),NOT NULL.)