oracle多表查詢

2021-08-09 01:57:49 字數 1176 閱讀 8476

多表查詢的基本概念:

查詢經驗:

1、在日後的開發之中,很多人都肯定要接觸到許多新的資料庫和資料表,那麼在這種時候有兩種做法:

做法一:新人做法,上來直接輸入以下命令

select * from table

2、當資料特別多的時候,耗費時間分明顯,所以盡量查部分資料

多表連線問題:

多表別名的使用:

select * from emp e,dept d where e.deptno=d.deptno;
左右連線:

以哪邊為主在哪邊加「(+)」

--左右連線,oracle獨有

select * from emp e, dept d where e.deptno (+)=d.deptno

select e.ename,m.ename manager from emp e,emp m where e.mgr = m.empno(+)

--笛卡爾積

select *from emp cross join dept

--自然連線

select * from emp natural join dept

--join...using子句:使用者自己指定乙個消除笛卡爾積的關聯字段

select * from emp join dept using(deptno)

--join...on

select *from emp join dept on (emp.deptno=dept.deptno)

--左連線

select *from emp left outer join dept on(emp.deptno=dept.deptno)

--右連線

select *from emp right outer join dept on(emp.deptno=dept.deptno)

--全連線

select *from emp full outer join dept on(emp.deptno=dept.deptno)

Oracle 多表查詢

sql 外連線 sql 按部門統計員工人數 部門號 部門名稱 人數 sql select d.deptno,d.dname,count e.empno 2 from dept d,emp e 3 where d.deptno e.deptno 4 group by d.deptno,d.dname ...

Oracle 多表查詢

等值和不等值連線查詢 為了避免笛卡爾集,可以在 where 加入有效的連線條件。oracle 連線多表查詢 在 where 子句中寫入連線條件。在表中有相同列時,在列名之前加上表名字首 select table1.column,table2.column from table1,table2 whe...

oracle 多表查詢

多表查詢 多表查詢,又稱表聯合查詢,即一條sql語句涉及到的表有多張,資料通過特定的連線進行聯合顯示.笛卡爾積 在數學中,兩個集合x和y的笛卡尓積 cartesian product 又稱直積,表示為x y.假設集合a 集合b 則兩個集合的笛卡爾積為。在資料庫中,如果直接查詢倆張表,那麼其查詢結果就...