SQL:1999连接
SQL:1999连接
SQL:1999连接在语法上和传统的ORACLE连接有着很大的不同。SQL:1999连接的类型在from语句中指明。ORACLE 9I支持的SQL:1999连接包括:
l CROSS连接
l NATURAL连接
l OUTER连接
l LEFT OUTER连接
l RIGHT OUTER连接
l FULL OUTER连接
以下的几个小节将详细介绍这些新的连接方式。
2.3.1.1 CROSS连接
CROSS连接是一种对两个表的交叉乘积。是对两个表的卡笛尔乘积。下面的例子:
SELECT last_name, department_name
from employees
CROSS JOIN departments;
这个语句等同于:
SELECT last_name, department_name
from employees, departments;
2.2.1.2 NATURAL连接
NATURAL连接的条件是两个表中名称相同的字段都有相同的值。如果两个表中相同名称的字段的类不同,那么会发生错误。如果有select *,那么在结果集中,相同的字段只出现一次。
在NATURAL连接中,选取的字段前面不需要用别名限定。比如:
SELECT employee_id, last_name, department_id
from employees
NATURAL JOIN departments;
等同于下面的语句:
SELECT employee_id, last_name, departments.department_id
from employees, departments
WHERE employees.department_id = departments.department_id;
如果并不是所有的名称相同的字段都需要进行’=’连接,那么就不能使用NATURAL连接,而可以使用USING语句,比如
SELECT employee_id, last_name, job_history.department_id
from employees
JOIN job_history
USING (employee_id);
这个语句等同于:
SELECT employees.employee_id, last_name, job
相关文档:
题目一:
有两张表:部门表department 部门编号dept_id 部门名称dept_name
员工表employee 员工编号emp_id ......
create table "user" (
id int identity,
constraint PK_USER prim ......
Use 数据库
DECLARE @ProcName varchar(50)
Create Table #tmpName(Content varchar(2000))
Create Table #tmp(ProcName varchar(2000),Content1 varchar(8000))
--定义一个游标
DECLARE SearchProc CURSOR FOR
--查询数据库中存储过程的名称,尽量去除系统PROC,可以根据crdate时间字段来寻找非系统PROC
select n ......
在运行窗口输入regedit,打开注册表编辑器,在HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Session Manager中找到PendingFileRenameOperations,删除该键值,关闭注册表编辑器。重新安装SQL Server 2000,此时,就可以正常进入期待的安装界面了。 ......
-
处理表重复记录(查询和删除)
/*
*****************************************************************************************************************************************************
1、Num、Name相同的重复值记录,没有大小关系只保留一条
2、Name相同,ID有大小关系时,保留大或小其中一个记录
整理人:中 ......