資料庫的自身關聯

2021-08-03 19:03:50 字數 1511 閱讀 1008

查詢出每個雇員的編號,姓名及其上級領導的編號,姓名:

select e.empno eno, e.ename ename, m.empnomno, m.ename mname 

from emp e, emp m

where e.mgr = m.empno(+);

查詢出在2023年僱擁的全部雇員的編號姓名僱擁日期(按照年-月-日顯示),工作領導姓名雇員月工資,雇員年工資(基本工資+獎金)、雇員工資等級部門編號,部門位置、並且要求這些雇員的月基本工資在1500—3500之間,將最後的結果按照年工資降續排列,如果你那工資基本相等的,則按照工作進行排序:

樣例分析:

確定所需要的資料表

emp:編號、姓名、僱擁日期、工作、月工資、計算年工資;

emp:領導姓名;

dept:部門編號,名稱,位置;

salgrade:工資等級;

確定關聯字段:

雇員和領導:emp.mgr =memp.empno;也就是說雇員的領導編號,要和同一張表的雇員編號相同,就是雇員也是領導,領導也是雇員,同一張表的連線操作;

雇員和部門:emp.deptno = dept.deptno;

雇員和工資等級:emp.sal between salgrade.losal and salgrade.hisal;

selectdistinct e.empno,e.ename, e.hiredate,e.sal,(e.sal + nvl(e.comm,0))*12 income, m.ename mname,

d.deptno dno, d.dname dname, d.loc, s.grade,decode(s.grade, 1,'e等級',2,'d等級',3,'c等級',4,'b等級',5,'a等級') 工資等級

fromemp e,emp m, dept d, salgrade s

whereto_char(e.hiredate,'yyyy') = '1981'and e.sal between 1500 and 3500 and

e.mgr = m.empno(+)

and e.deptno = d.deptno

and e.sal between s.losal and s.hisal

order byincomedesc, e.job;

資料庫的設計原則 關聯還是不關聯?

資料庫的設計原則 關聯還是不關聯?設計 資料庫 確定使用hibernate 的過程中,時常會有爭論,爭論的焦點主要還是集中在表與表之間的關聯上面 有的傾向於去掉表與表之間的任何關聯 有的拿完整性說話,必須保留所有的關聯性。觀點1 我傾向於去掉所有的關聯,為了開發的方便。然後寫 的時候自己留意完整性的...

關聯表查詢資料庫

1.呼叫方法 this getrelationlist m map,bd prefix.deal as d left join db prefix.user as u on d.user id u.id d.u.site id d.id map指的是查詢條件陣列 2.實現函式 protected f...

資料庫關聯查詢

使用者授權,我們涉及到了三個物件 1 使用者名稱root 2 密碼 3 主機localhost 建立名字為qq的使用者 create user qq localhost 建立名字為anan使用者並新增密碼 create user anan localhost identified by 123 建立...