SQL使用using关键字详解

14 篇文章 0 订阅
12 篇文章 1 订阅

sql/92标准可以使用using关键字来简化连接查询,但是只是在查询满足下面两个条件时,才能使

用using关键字进行简化。
1.查询必须是等值连接。
2.等值连接中的列必须具有相同的名称和数据类型。
例如:使用using关键字,如下:

select emptno,ename,sal,deptno,dname from emp e inner join dept d using(deptno);

SQL> select e.empno,e.ename,e.sal,deptno,d.dname from

2 emp e inner join dept d using(deptno);



EMPNO ENAME SAL DEPTNO DNAME

---------- ---------- ---------- ---------- --------------

7369 SMITH 800 20 RESEARCH

7499 ALLEN 1600 30 SALES

7521 WARD 1250 30 SALES

7566 JONES 2975 20 RESEARCH

7654 MARTIN 1250 30 SALES

7698 BLAKE 2850 30 SALES

7782 CLARK 2450 10 ACCOUNTING

7788 SCOTT 3000 20 RESEARCH

7839 KING 5000 10 ACCOUNTING

7844 TURNER 1500 30 SALES

7876 ADAMS 1100 20 RESEARCH

7900 JAMES 1800 30 SALES

7902 FORD 3000 20 RESEARCH

7934 MILLER 1300 10 ACCOUNTING

7935 XIAOXUE 5000 20 RESEARCH

已选择 15 行。
如上述的结果与自然连接的结果相同。

使用using关键字简化连接时,需要注意以下几点:
1.使用emp表和dept表中的deptno列进行连接时,在using子句和select子句中,都不能为deptno列指定表名或表别 名。
2.如果在连接查询时使用了两个表中相同的多个列,那么久可以在using子句中指定多个列名,形式如下:

select... from table1 inner join table2

using(column1,column2)

上述的语句相当于下面的语句:

select... from table1 inner join table2

on table1.column1=table2.column2

and table1.column2=table2.column2;

如果对多个表进行检索,就必须多次使用using关键字进行指定,形式如下:

select... from table1

inner join table2 using(column1)

inner join table3 using(column2);

上述的语句相当于下面的语句

select... from table1,table2,table3

where table1.column1=table2.column1

and table2.column2=table3.table2;

 

  • 17
    点赞
  • 45
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值