oracle--マルチテーブル共同問い合わせSQL92のバージョン

SQL92学習
				-クエリの従業員の名前、職種、給与、部門名の
				組合のSQLクエリ(マルチテーブルクエリ)
				--1、SQL92標準
				----直積:一つの完成には多くのステップを必要とし、別のステップがあります多くの点で、この問題はデカルト積と呼ばれるすべての方法を完了している
					14 - SELECT * EMPから
					部門からSELECT * - 。7 
					* 14 = 98 7 - SELECT EMP、部門注文*からENAMEで同等のリンクリンク状態。場合は同等のリンク名フィールドは同じにすることはできませんが、フィールドの値が同じになるように。
					-クエリ従業員の名前、職種、給与、部門名
					EMPから選択*、EMP.DEPTNO DEPT = dept.deptno-- スクリーニング同等のリンクの結果使用
					選択ENAME、仕事、サル、DNAME EMPから、DEPT EMPを。 DEPTNO = DEPT.DEPTNO; -等価リンククエリ指定されたフィールドデータの使用
				 
					を選択しENAME、ジョブ、SAL、EMP.DEPTNO 、EMPからDNAME、DEPT EMP.DEPTNO = DEPT.DEPTNO; - 場合マルチテーブルクエリ、参照表が宣言されなければならない同じフィールドの値
					EMP.ENAME、emp.job、emp.sal、EMP.DEPTNO選択し 、EMPからdept.dname、DEPT EMP.DEPTNO = DEPT.DEPTNOと、 - テーブル名がクエリ効率を向上させる際に、クエリフィールドの値で指定 e.sal> s.losalとe.sal <s.hisal、 
				セルフライゲーション:条件は、実際には、接続された一方共存する異なる情報を必要とするので、使用頻度が非常に高くはないが、二つの同一のリンクテーブルに相当。
					e.ename、e.job、e.sal、e.deptno選択 - ;、EMP eからd.dname、DEPT D e.deptno = d.deptno マルチテーブルのクエリを区別するためにエイリアステーブルを
					Eセレクト。 ENAME、e.job、e.sal、e.deptno、 DEPTNOによってEMP Eからd.dname、DEPT D e.deptno = d.deptnoため; - また順を並べ替えるために使用することができる 
				非等価リンク
					---クエリの従業員の名前、職種、給与、賃金水準
					SALGRADEからSELECT * 
					EMPからSELECT *、ENAMEで注文をSALGRADE 
					EMPからSELECT *、WHERE SAL> LosalとSAL <hisal SALGRADE SELECT e.ename、e.job、e.salを、 EMPのEのs.gradeから、WHEREをSALGRADE e.sal S> s.losalとe.sal <s.hisal;
					
					-クエリの従業員の名前、職種、給与、と上司は名前
					のEMP UpdateからSELECT *を
					表にEMPからSELECT * AS TEMP作成
					するemp EからSELECT *を、TEMPトン= t.empno WHERE e.mgrを

  主要部として何ら外部接続(+)、(+)はヌル値を表示存在しません

そしてe.sal <s.hisal 
、EMP電子SELECT * FROM EMP Tここt.empno = e.mgr 
-左连接
EMP Eから選択*、DEPT Dここe.deptno = d.deptno(+)
--you连接
、EMP電子SELECT * FROM DEPT Dの場合e.deptno(+)= d.deptno

  

おすすめ

転載: www.cnblogs.com/eadela/p/11464935.html