以下均以oracle->scott账号自带的数据库为例(方括号里的东西表示有和没有效果是一样的)。
表内查询->自连接
查询所有经理所对应的雇员:
sql/86:
select manager.ename as manager,worker.ename as worker from emp manager,emp worker where manager.empno=worker.mgr;
sql/92:
select manager.ename as manager, worker.ename as worker where emp manager [inner] join emp worker on manager.empno=worker.mgr;
表间连接->内连接
查询部门名对应的雇员名:
sql/86:
select e.ename,d.dname from emp e,dept d where e.deptno=d.deptno;
sql/92:
select e.ename ,d.dname from emp e [inner] join dept d on e.deptno=d.deptno;
相同列名的关联可以用自然连接达到同样的效果:
select ename,dname from emp natural [inner] join dept;
->左外连接
查询雇员名对应的部门名和没有部门对应的雇员名:
sql/92:
select e.ename,d.dname from emp e left [outer] join dept d on e.deptno=d.deptno;
相同列名的关联可以用自然连接达到同样的效果:
select ename,dname from emp natural left [outer] join dept;
->右外连接
查询雇员名对应的部门名和没有雇员对应的部门名:
sql/92:
select e.ename,d.dname from emp e [right] outer join dept d on e.deptno=d.deptno;
相同列名的关联可以用自然连接达到同样的效果:
select ename,dname from emp natural right [outer] join dept;
->全连接
sql/92:
select e.ename,d.dname from emp e full [outer] join dept d on e.deptno=d.deptno;
相同列名的关联可以用自然连接达到同样的效果:
select ename,dname from emp natural full [outer] join dept;
---------以上都是相等连接,还有一种不等连接
例如,显示每个雇员的名字和薪资等级:
sql/86:
select e.ename,s.grade from emp e,salgrade s where e.sal between s.losal and s.hisal;
sql/92:
select e.ename,s.grade from emp e [inner] join salgrade s on e.sal between s.losal and s.hisal;
*1、between...and...包括两个端点值(仅限于oracle,其它数据库的处理方式可能不同)。
2、从可以加inner中可以看出,不等连接也可以有内连接、左外/右外/全连接。
分享到:
相关推荐
SqlServer连接工具SqlServer连接工具SqlServer连接工具
数据查询2—连接查询:同时涉及两个以上的表的查询 连接条件:用来连接两个表的条件 [.] [.] 连接字段:连接条件中的列名称(注意:连接字段类型必须是可比的,但名字不必相同) 连接查询—(1)等值与非等值连接查询:...
仿sqlserver连接查询视图、存储过程等功能;查询语句关键字自动变色;可直接创建表;界面仿Office界面
SQL多表连接查询,内联 外联(左外联,右外联)交叉联接
SQL 连接查询分析语句,初学者的好资料
解决oracle sqldeveloper无法连接mysql、SQLServer问题,sqlDeveloper是ORACLE数据库开发工具,自带的是无法连接MS SQL Server以及mysql的,想连接的话需要第三方工具。 使用方法: 解压出来后将2个jar放入jlib...
sql查询基础,连接查询介绍及实例,简洁形象的描述了连接查询的原理。
java 连接sqlserver数据库查询,并分页显示
2.体会各种查询的异同及相互之间的转换,体会各种查询的执行过程,为综合应用打下良好的基础。 ● 查询没有选修指定课程号的学生的学号、姓名、性别、出生日期和级别。课程号由局部变量提供。 declare @Cno char...
JSP与SQL Server2000的连接查询,显示,我默认的是你已经给SQL Server2000打上了数据库sp3补丁,驱动文件已经装好了,这里紧是代码段
SQL Server连接字段的方法 SQL Server连接字段的方法
对常用的SQL语句的汇总,里面包含了SQL各种连接查询,以及游标,存储过程的讲解
SQLTools sql连接工具SQLTools sql连接工具SQLTools sql连接工具
sql连接器
SQL SERVER连接oracle数据库几种方法 查询oracle数据库中的表 在master数据库中查看已经存在的链接服务器 要在企业管理器内指定登录帐号
Sqldbx连接oracle,不用安装client http://www.cnblogs.com/ycdx2001/p/5441405.html
sql连接myeclipse与sql的连接
统过这个说明大家可以看到各种查询连接的效果,如left join,right join,inner join等,希望对大家有所帮助
数据库原理及运用实验四SQL连接查询.doc
Oracle的几种连接详解, left(right,inner)join和一般where的转换.