oracle使用using关键字

oracle使用using关键字
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;

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Oracle关键字是一些被系统保留的词语,这些词语在SQL语句拥有特殊的含义,不能当作表名、列名或其他标识符来使用。以下是Oracle常用的关键字及其使用方式: 1. SELECT:用于从表检索数据。SELECT语句通常包括FROM、WHERE、GROUP BY、HAVING和ORDER BY等子句。 2. FROM:用于指定要从检索数据的表。FROM子句通常与SELECT语句一起使用。 3. WHERE:用于指定检索条件,只有符合条件的行才会被检索出来。 4. GROUP BY:用于指定分组条件,将表的数据按照指定的列进行分组。 5. HAVING:用于指定分组后的筛选条件,只有符合条件的分组才会被检索出来。 6. ORDER BY:用于指定检索结果的排序方式,可以按照一个或多个字段进行升序或降序排序。 7. INSERT:用于向表插入新数据。 8. UPDATE:用于更新表的数据。 9. DELETE:用于删除表的数据。 10. CREATE:用于创建表、视图、索引等数据库对象。 11. ALTER:用于修改数据库对象的结构或属性。 12. DROP:用于删除数据库对象。 13. GRANT:用于授权用户或角色对数据库对象的访问权限。 14. REVOKE:用于收回已授权用户或角色对数据库对象的访问权限。 15. COMMIT:用于提交事务。 16. ROLLBACK:用于回滚事务。 17. SAVEPOINT:用于在事务设置保存点,可以用于回滚到某个保存点。 18. TRUNCATE:用于快速清空表的数据,不记录日志,效率比DELETE高。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值