SQL運算元據庫 查詢操作 分組查詢

2021-08-27 05:58:59 字數 3598 閱讀 4824

建立部門表:

create table dept(

deptno int primary key,

dname varchar(14),

loc varchar(13)

) ;

插入資料:

insert into dept values (10,'accounting','new york');

insert into dept values (20,'research','dallas');

insert into dept values (30,'sales','chicago');

insert into dept values (40,'operations','boston');

員工表:

create table emp(

empno int primary key,

ename varchar(10),

job varchar(9),

mgr int,

hiredate date,

sal double,

comm double,

deptno int,

foreign key (deptno) references dept(deptno));

插入資料:

-- alter table emp add foreign key (deptno) references dept(deptno);

insert into emp values(7369,'smith','職員',7566,"1980-12-17",800,null,20);

insert into emp values(7499,'allen','銷售員',7698,'1981-02-20',1600,300,30);

insert into emp values(7521,'ward','銷售員',7698,'1981-02-22',1250,500,30);

insert into emp values(7566,'jones','經理',7839,'1981-04-02',2975,null,20);

insert into emp values(7654,'martin','銷售員',7698,'1981-09-28',1250,1400,30);

insert into emp values(7698,'blake','經理',7839,'1981-05-01',2850,null,30);

insert into emp values(7782,'clark','經理',7839,'1981-06-09',2450,null,10);

insert into emp values(7788,'scott','職員',7566,'1987-07-03',3000,2000,20);

insert into emp values(7839,'king','董事長',null,'1981-11-17',5000,null,10);

insert into emp values(7844,'turners','銷售員',7698,'1981-09-08',1500,50,30);

insert into emp values(7876,'adams','職員',7566,'1987-07-13',1100,null,20);

insert into emp values(7900,'james','職員',7698,'1981-12-03',1250,null,30);

insert into emp values(7902,'ford','銷售員',7566,'1981-12-03',3000,null,20);

insert into emp values(7934,'miller','職員',7782,'1981-01-23',1300,null,10);

建立工資等級表:

create table salgrade(

grade int,

losal double,

hisal double );

插入資料:

insert into salgrade values (1,500,1000);

insert into salgrade values (2,1001,1500);

insert into salgrade values (3,1501,2000);

insert into salgrade values (4,2001,3000);

insert into salgrade values (5,3001,9999);

1.查詢部門30中員工的詳細資訊。

select * from emp where deptno=30;

2.找出從事職員工作的員工的編號、姓名、部門號。

select empno,ename,deptno from emp where job="職員";

3.檢索出獎金多於基本工資的員工資訊。

select *from emp where comm>sal;

4.檢索出獎金多於基本工資60%的員工資訊。

select * from emp where comm>sal*0.6;

5.找出姓名中包含a的員工資訊。

select *from emp where ename like '%a%';

6.找出姓名以a、b、s開始的員工資訊。

select *from emp where ename like 'a%' or ename like'b%' or ename like 's%';

7.找到名字長度為7個字元的員工資訊。

select * from emp where length(ename)=7;

8.名字中不包含r字元的員工資訊。

select * from emp where ename not like '%r%';

9.返回員工的詳細資訊並按姓名公升序排序。

select *from emp order by ename asc;

10.返回員工的資訊並按姓名降序,工資公升序排列。

select * from emp order by ename desc,sal asc;

11.計算員工的日薪(按30天)。

select ename,sal/30 as '日薪' from emp;

12.找出獲得獎金的員工的工作:

select * from emp where comm;

13.找出獎金少於100或者沒有獲得獎金的員工的資訊。

select * from emp where comm<100 or comm is null;

14.找出10部門的經理、20部門的職員 的員工資訊。

select *from emp where deptno=10 or deptno=20;

15.找出10部門的經理、20部門的職員 或者既不是經理也不是職員但是工資高於2000元的員工資訊。

select * from emp

where (deptno=10 and job='經理')

or (deptno=20 and job='職員')

or (job<>'經理' and job<>'職員' and sal>2000);

SQL運算元據庫 查詢操作 基本查詢

完成下面的功能 1.查詢表中所有學生的資訊。2.查詢表中所有學生的姓名和對應的英語成績。3.統計每個學生的總分。4.在所有學生總分數上加10分特長分。5.使用別名表示學生分數。6.查詢姓名為李一的學生成績 7.查詢英語成績大於90分的同學 8.查詢總分大於200分的所有同學 9.查詢英語分數在 80...

jdbc運算元據庫插入 更新 刪除 查詢

mysql資料庫 public boolean insertfrom person per catch sqlexception e finally return flag public boolean updatefrom int id,int string name catch sqlexcep...

運算元據庫結構Sql語句

新建表 create table 表名 自動編號字段 int identity 1,1 primary key 欄位1 nvarchar 50 default 預設值 null 欄位2 ntext null 欄位3 datetime,欄位4 money null 欄位5 int default 0,...