老師布置的mysql查詢作業(yè)及答案_第1頁
老師布置的mysql查詢作業(yè)及答案_第2頁
老師布置的mysql查詢作業(yè)及答案_第3頁
老師布置的mysql查詢作業(yè)及答案_第4頁
老師布置的mysql查詢作業(yè)及答案_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、 案例目的: 根據(jù)不同條件對表進(jìn)行查詢操作, 1:employee表結(jié)構(gòu) 字段名 字段說明 數(shù)據(jù)類型 主鍵 外鍵 非空 唯一 自增 e_no 員工編號 ) 11int( 是 否 是 是 否 e_name 員工姓名 varchar(50) 否 否 是 否 否 e_gender 員工性別 char(2) 否 否 否 否 否 dept_no 部門編號 int(11) 否 是 是 否 否 e_job 職位 varchar(50) 否 否 是 否 否 e_salary 薪水 int(11) 否 否 是 否 否 hireDate 入職日期 date 否 否 是 否 否 2:dept表結(jié)構(gòu) 字段名 字段說明

2、 數(shù)據(jù)類型 主鍵 外鍵 非空 唯一 自增 dept_no 部門編號 )int(11 是 否 是 是 是 d_name 部門名稱 varchar(50) 否 否 是 否 否 d_location 部門地址 varchar(100) 否 否 否 否 否 1:創(chuàng)建數(shù)據(jù)表employee和dept create database chaxun; use chaxun; create table dept( dept_no int(11) primary key auto_increment, d_name varchar(50) not null, d_location varchar(100) );

3、 create table employee( e_no int(11) primary key, e_name varchar(50) not null, e_gender char(2) , dept_no int(11) not null, e_job varchar(50) not null, e_salary int(11) not null, hireDate date not null ); Alter table employee add constraint emp_dept foreign key (dept_no) references dept(dept_no); 2:

4、將指定記錄分別插入兩個表中,執(zhí)行過程如下: 向dept表中插入數(shù)據(jù) INSERT INTO dept VALUES (10, ACCOUNTING, ShangHai), (20, RESEARCH , BeiJing ), (30, SALES , ShenZhen ), (40, OPERATIONS , FuJian ); 向employee表中插入數(shù)據(jù) INSERT INTO employee VALUES (1001, SMITH, m,20, CLERK,800,2005-11-12), (1002, ALLEN, f,30, SALESMAN, 1600,2003-05-12),

5、 (1003, WARD, f,30, SALESMAN, 1250,2003-05-12), (1004, JONES, m,20, MANAGER, 2975,1998-05-18), (1005, MARTIN, m,30, SALESMAN, 1250,2001-06-12), (1006, BLAKE, f,30, MANAGER, 2850,1997-02-15), (1007, CLARK, m,10, MANAGER, 2450,2002-09-12), (1008, SCOTT, m,20, ANALYST, 3000,2003-05-12), (1009, KING, f,

6、10, PRESIDENT, 5000,1995-01-01), (1010, TURNER, f,30, SALESMAN, 1500,1997-10-12), (1011, ADAMS, m,20, CLERK, 1100,1999-10-05), (1012, JAMES, m,30, CLERK, 950,2008-06-15); 3:在employee表中,查詢所有記錄的e_no、e_name和e_salary字段值 mysql select e_no,e_name,e_salary from employee; +-+-+-+ | e_no | e_name | e_salary

7、| +-+-+-+ | 1001 | SMITH | 800 | | 1002 | ALLEN | 1600 | | 1003 | WARD | 1250 | | 1004 | JONES | 2975 | | 1005 | MARTIN | 1250 | | 1006 | BLAKE | 2850 | | 1007 | CLARK | 2450 | | 1008 | SCOTT | 3000 | | 1009 | KING | 5000 | | 1010 | TURNER | 1500 | | 1011 | ADAMS | 1100 | | 1012 | JAMES | 950 | +-+-

8、+-+ 12 rows in set (0.00 sec) 4:在employee表中,查詢dept_no等于10和20的所有記錄。 mysql select * from employee where dept_no between 10 and 20; +-+-+-+-+-+-+-+ | e_no | e_name | e_gender | dept_no | e_job | e_salary | hireDate | +-+-+-+-+-+-+-+ | 1001 | SMITH | m | 20 | CLERK | 800 | 2005-11-12 | | 1004 | JONES |

9、m | 20 | MANAGER | 2975 | 1998-05-18 | | 1007 | CLARK | m | 10 | MANAGER | 2450 | 2002-09-12 | | 1008 | SCOTT | m | 20 | ANALYST | 3000 | 2003-05-12 | | 1009 | KING | f | 10 | PRESIDENT | 5000 | 1995-01-01 | | 1011 | ADAMS | m | 20 | CLERK | 1100 | 1999-10-05 | +-+-+-+-+-+-+-+ 6 rows in set (0.00 se

10、c) 5:在employee表中,查詢工資范圍在800到2500之間的員工信息。 mysql select * from employee where e_salary800 and e_salary select * from employee where dept_no=20; +-+-+-+-+-+-+-+ | e_no | e_name | e_gender | dept_no | e_job | e_salary | hireDate | +-+-+-+-+-+-+-+ | 1001 | SMITH | m | 20 | CLERK | 800 | 2005-11-12 | | 10

11、04 | JONES | m | 20 | MANAGER | 2975 | 1998-05-18 | | 1008 | SCOTT | m | 20 | ANALYST | 3000 | 2003-05-12 | | 1011 | ADAMS | m | 20 | CLERK | 1100 | 1999-10-05 | +-+-+-+-+-+-+-+ 4 rows in set (0.00 sec) 7:在employee表中,查詢每個部門最高工資的員工信息。 select max(e_salary) from employee group by dept_no; # 查詢每個部門的最高工資

12、 Select * from employee where e_salary in (select max(e_salary) from employee group by dept_no); mysql Select * from employee where e_salary in (select max(e_salary) from emp loyee group by dept_no); +-+-+-+-+-+-+-+ | e_no | e_name | e_gender | dept_no | e_job | e_salary | hireDate | +-+-+-+-+-+-+-+

13、 | 1006 | BLAKE | f | 30 | MANAGER | 2850 | 1997-02-15 | | 1008 | SCOTT | m | 20 | ANALYST | 3000 | 2003-05-12 | | 1009 | KING | f | 10 | PRESIDENT | 5000 | 1995-01-01 | +-+-+-+-+-+-+-+ 8:查詢員工BLAKE所在部門和部門所在地。 mysql select e_name,d_name,d_location from employee as e ,dept as d where e.dept_no=d.dept_

14、no and e_name=BLAKE; +-+-+-+ | e_name | d_name | d_location | +-+-+-+ | BLAKE | SALES | ShenZhen | +-+-+-+ 1 row in set (0.00 sec) 9:使用連接查詢,查詢所有員工的部門和部門信息。 mysql select e_name,d_name,d_location from employee as e ,dept as d where e.dept_no=d.dept_no; +-+-+-+ | e_name | d_name | d_location | +-+-+-+

15、| CLARK | ACCOUNTING | ShangHai | | KING | ACCOUNTING | ShangHai | | SMITH | RESEARCH | BeiJing | | JONES | RESEARCH | BeiJing | | SCOTT | RESEARCH | BeiJing | | ADAMS | RESEARCH | BeiJing | | ALLEN | SALES | ShenZhen | | | ShenZhen | SALES | WARD | MARTIN | SALES | ShenZhen | | BLAKE | SALES | Shen

16、Zhen | | TURNER | SALES | ShenZhen | | JAMES | SALES | ShenZhen | +-+-+-+ 10:在employee表中,計(jì)算每個部門各有多少名員工。 mysql select dept_no, count(e_no) from employee group by dept_no; +-+-+ | dept_no | count(e_no) | +-+-+ | 10 | 2 | | 20 | 4 | | 30 | 6 | +-+-+ 3 rows in set (0.00 sec) 11:在employee表中,計(jì)算不同類型職工的總工資數(shù)

17、。 mysql select e_job,sum(e_salary) from employee group by e_job; +-+-+ | e_job | sum(e_salary) | +-+-+ | ANALYST | 3000 | | CLERK | 2850 | | MANAGER | 8275 | | PRESIDENT | 5000 | | SALESMAN | 5600 | +-+-+ 12:在employee表中,計(jì)算不同部門的平均工工資。 mysql select dept_no,avg(e_salary) from employee group by dept_no;

18、 +-+-+ | dept_no | avg(e_salary) | +-+-+ | 10 | 3725.0000 | | 20 | 1968.7500 | | 30 | 1566.6667 | +-+-+ 3 rows in set (0.00 sec) 13:在employee表中,查詢工資低于1500的員工信息。 mysql select * from employee where e_salary select * from employee order by dept_no desc,e_salary desc; +-+-+-+-+-+-+-+ | e_no | e_name | e

19、_gender | dept_no | e_job | e_salary | hireDate | +-+-+-+-+-+-+-+ | 1006 | BLAKE | f | 30 | MANAGER | 2850 | 1997-02-15 | | 1002 | ALLEN | f | 30 | SALESMAN | 1600 | 2003-05-12 | | 1010 | TURNER | f | 30 | SALESMAN | 1500 | 1997-10-12 | | 1003 | WARD | f | 30 | SALESMAN | 1250 | 2003-05-12 | | 1005 | MARTIN | m | 30 | SALESMAN | 1250 | 2001-06-12 | | 1012 | JAMES | m | 30 | CLERK | 950 | 2008-06-15 | | 1008 | SCOTT | m | 20 | ANALYST | 3000 | 2003-05-12 | | 1004 | JONES | m | 20 | MANAGER | 2975 | 1998-05-18 | | 1011 | ADAMS | m | 20 | CLERK | 1100 | 1999-10-05 | | 1001 | SM

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論