sql 高级 (二)(Alias(别名) sql join UNION 和 UNION ALL)

Alias(别名)

eg(使用表名称别名):

select po.orderid,p.lastname,p.firstname from persons as p,product_orders as po where p.lastname=‘adams‘ and p.firstname=‘john‘(使用别名)

select product_orders.orderid,persons.lastname,persons.firstname from persons,product_orders where persons.lastname=‘adams‘ and persons.firstname=‘john‘(不使用别名)

eg(使用一个列名别名):

select lastname as family,firstname as name from persons

SQL join 用于根据两个或多个表中的列之间的关系,从这些表中查询数据。

引用两个表:

SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo   FROM Persons, Orders  WHERE                                    Persons.Id_P = Orders.Id_P

SQL JOIN - 使用 Join

SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo   FROM Persons   INNER JOIN Orders

ON Persons.Id_P = Orders.Id_P    ORDER BY Persons.LastName

inner join 与join 是相同的。在表中存在至少一个匹配时,inner join 关键字返回行。

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

select   Persons.LastName,  Persons.FirstName,  Orders.OrderNo FROM  Persons   LEFT JOIN   Orders  ON

Persons.Id_P=Orders.Id_P ORDER BY Persons.LastName

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

            SELECT  Persons.LastName,  Persons.FirstName,  Orders.OrderNo FROM   Persons  RIGHT JOIN Orders  ON 

Persons.Id_P=Orders.Id_P  ORDER   BY  Persons.LastName

FULL JOIN 关键字 :只要其中某个表存在匹配,FULL JOIN 关键字就会返回行。

SELECT   Persons.LastName,  Persons.FirstName,  Orders.OrderNo  FROM  Persons   FULL   JOIN   Orders  ON

Persons.Id_P=Orders.Id_P   ORDER   BY   Persons.LastName

UNION 和 UNION ALL 操作符

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

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

eg:

SELECT  E_Name  FROM   Employees_China

UNION

SELECT   E_Name  FROM  Employees_USA


SELECT E_Name FROM Employees_China

UNION ALL

SELECT E_Name FROM Employees_USA

时间: 2024-08-03 12:41:15

sql 高级 (二)(Alias(别名) sql join UNION 和 UNION ALL)的相关文章

PL/SQL(二)PL/SQL块

PL/SQL是一种块结构的语言,一个PL/SQL程序包含了一个或者多个逻辑块,逻辑块中可以声明变量,变量在使用之前必须先声明.除了正常的执行程序外,PL/SQL还提供了专门的异常处理部分进行异常处理.每个逻辑块分为三个部分,语法是: 语法结构:PL/SQL块的语法 [DECLARE --declaration statements] ① BEGIN --executable statements ② [EXCEPTION --exception statements] ③ END; 语法解析:

二、个人总结的菜鸟教程|sql教程的知识点(SQL高级教程)

二.SQL高级教程 1.SQL SELECT TOP SELECT TOP 子句用于规定要返回的记录的数目. SELECT TOP 子句对于拥有数千条记录的大型表来说,是非常有用的. 注释:并非所有的数据库系统都支持 SELECT TOP 子句. sql server|ms access语法 select top number|percent column_name from table_name; mysql|oracle语法(与top等价) select Column_name from t

SQL 高级(2)

SQL 高级(2) 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 注释:INNER JOIN 与 JOIN 是相同的. 原始的表 (用在例子中的): "Persons" 表:

SQL 高级(3)

SQL 高级(3) SQL SELECT INTO 语句 SQL SELECT INTO 语句可用于创建表的备份复件. SELECT INTO 语句 SELECT INTO 语句从一个表中选取数据,然后把数据插入另一个表中. SELECT INTO 语句常用于创建表的备份复件或者用于对记录进行存档. SQL SELECT INTO 语法 您可以把所有的列插入新表: SELECT * INTO new_table_name [IN externaldatabase] FROM old_tablen

SQL 高级(6)

SQL 高级(6) SQL VIEW(视图) 视图是可视化的表.本章讲解如何创建.更新和删除视图. SQL CREATE VIEW 语句 什么是视图? 在 SQL 中,视图是基于 SQL 语句的结果集的可视化的表. 视图包含行和列,就像一个真实的表.视图中的字段就是来自一个或多个数据库中的真实的表中的字段.我们可以向视图添加 SQL 函数.WHERE 以及 JOIN 语句,我们也可以提交数据,就像这些来自于某个单一的表. 注释:数据库的设计和结构不会受到视图中的函数.where 或 join 语

SQL 高级(4)

SQL 高级(4) SQL CHECK 约束 SQL CHECK 约束 CHECK 约束用于限制列中的值的范围. 如果对单个列定义 CHECK 约束,那么该列只允许特定的值. 如果对一个表定义 CHECK 约束,那么此约束会在特定的列中对值进行限制. SQL CHECK Constraint on CREATE TABLE 下面的 SQL 在 "Persons" 表创建时为 "Id_P" 列创建 CHECK 约束.CHECK 约束规定 "Id_P"

SQL 高级(5)

SQL 高级(5) SQL CREATE INDEX 语句 CREATE INDEX 语句用于在表中创建索引. 在不读取整个表的情况下,索引使数据库应用程序可以更快地查找数据. 索引 您可以在表中创建索引,以便更加快速高效地查询数据. 用户无法看到索引,它们只能被用来加速搜索/查询. 注释:更新一个包含索引的表需要比更新一个没有索引的表更多的时间,这是由于索引本身也需要更新.因此,理想的做法是仅仅在常常被搜索的列(以及表)上面创建索引. SQL CREATE INDEX 语法 在表上创建一个简单

SQL高级应用(UNION、UNION ALL)

SQL UNION和 UNION ALL操作符 UNION操作符用于合并两个或多个 SELECT语句的结果集 请注意,UNIOB 内部的SELECT 语句必须拥有相同数量的列.列也必须拥有相似的数据类型.同时,每条SELECT语句中的列的顺序也必须相同 SQL UNION 的语法如下 SELECT column_name(s) FROM table_name1 UNION SELECT column_name(s) FROM table_name2 注意:默认地,UNION 操作符选取不同的值.

图解SQL的inner join、left join、right join、full outer join、union、union all的区别

转自:http://blog.csdn.net/jz20110918/article/details/41806611 假设我们有两张表.Table A 是左边的表.Table B 是右边的表.其各有四条记录,其中有两条记录name是相同的,如下所示:让我们看看不同JOIN的不同 A表 id name 1 Pirate 2 Monkey 3 Ninja 4 Spaghetti B表 id name 1 Rutabaga 2 Pirate 3 Darth Vade 4 Ninja 1.INNER