标准SQLWord格式文档下载.docx
《标准SQLWord格式文档下载.docx》由会员分享,可在线阅读,更多相关《标准SQLWord格式文档下载.docx(10页珍藏版)》请在冰豆网上搜索。
Id_P
LastName
FirstName
Address
City
1
Adams
John
OxfordStreet
London
2
Bush
George
FifthAvenue
NewYork
3
Carter
Thomas
ChanganStreet
Beijing
Orders"
Id_O
OrderNo
77895
44678
22456
4
24562
5
34764
65
3、内连接(INNERJOIN)实例
现在,我们希望列出所有人的定购。
您可以使用下面的SELECT语句:
SELECTPersons.LastName,Persons.FirstName,Orders.OrderNo
FROMPersons
INNERJOINOrders
ONPersons.Id_P=Orders.Id_P
ORDERBYPersons.LastName
结果集:
INNERJOIN关键字在表中存在至少一个匹配时返回行。
如果"
中的行在"
中没有匹配,就不会列出这些行。
二、SQLLEFTJOIN
LEFTJOIN关键字会从左表(table_name1)那里返回所有的行,即使在右表(table_name2)中没有匹配的行。
1、LEFTJOIN语法
LEFTJOINtable_name2
在某些数据库中,LEFTJOIN称为LEFTOUTERJOIN。
3、左连接(LEFTJOIN)实例
现在,我们希望列出所有的人,以及他们的定购-如果有的话。
LEFTJOINOrders
LEFTJOIN关键字会从左表(Persons)那里返回所有的行,即使在右表(Orders)中没有匹配的行。
三、SQLRIGHTJOIN
RIGHTJOIN关键字会右表(table_name2)那里返回所有的行,即使在左表(table_name1)中没有匹配的行。
1、RIGHTJOIN语法
RIGHTJOINtable_name2
在某些数据库中,RIGHTJOIN称为RIGHTOUTERJOIN。
3、右连接(RIGHTJOIN)实例
现在,我们希望列出所有的定单,以及定购它们的人-如果有的话。
RIGHTJOINOrders
RIGHTJOIN关键字会从右表(Orders)那里返回所有的行,即使在左表(Persons)中没有匹配的行。
四、SQLUNION
UNION操作符用于合并两个或多个SELECT语句的结果集。
请注意,UNION内部的SELECT语句必须拥有相同数量的列。
列也必须拥有相似的数据类型。
同时,每条SELECT语句中的列的顺序必须相同。
1、SQLUNION语法
SELECTcolumn_name(s)FROMtable_name1
UNION
SELECTcolumn_name(s)FROMtable_name2
默认地,UNION操作符选取不同的值。
如果允许重复的值,请使用UNIONALL。
2、SQLUNIONALL语法
UNIONALL
另外,UNION结果集中的列名总是等于UNION中第一个SELECT语句中的列名。
3、例子中使用的原始表
Employees_China:
E_ID
E_Name
01
Zhang,Hua
02
Wang,Wei
03
Carter,Thomas
04
Yang,Ming
Employees_USA:
Adams,John
Bush,George
Gates,Bill
3、使用UNION命令实例
列出所有在中国和美国的不同的雇员名:
SELECTE_NameFROMEmployees_China
SELECTE_NameFROMEmployees_USA
结果
这个命令无法列出在中国和美国的所有雇员。
在上面的例子中,我们有两个名字相同的雇员,他们当中只有一个人被列出来了。
UNION命令只会选取不同的值。
五、UNIONALL
UNIONALL命令和UNION命令几乎是等效的,不过UNIONALL命令会列出所有的值。
SQLStatement1
SQLStatement2
使用UNIONALL命令实例
列出在中国和美国的所有的雇员:
六、SELECTINTO
SELECTINTO语句从一个表中选取数据,然后把数据插入另一个表中。
SELECTINTO语句常用于创建表的备份复件或者用于对记录进行存档。
1、SQLSELECTINTO语法
您可以把所有的列插入新表:
SELECT*
INTOnew_table_name[INexternaldatabase]
FROMold_tablename
或者只把希望的列插入新表:
2、SQLSELECTINTO实例-制作备份复件
下面的例子会制作"
表的备份复件:
INTOPersons_backup
IN子句可用于向另一个数据库中拷贝表:
INTOPersonsIN'
Backup.mdb'
如果我们希望拷贝某些域,可以在SELECT语句后列出这些域:
SELECTLastName,FirstName
3、SQLSELECTINTO实例-带有WHERE子句
我们也可以添加WHERE子句。
下面的例子通过从"
表中提取居住在"
Beijing"
的人的信息,创建了一个带有两个列的名为"
Persons_backup"
的表:
SELECTLastNam