【Oracle实验 实验5 SQL语句应用】
实验5 SQL语句应用
1 实验目的
- 掌握数据的插入、修改和删除操作。
- 掌握不同类型的数据查询操作。
2 实验要求
- 利用SQL语句对图书销售系统表进行插入、修改、删除和查询操作。
3 实验步骤
(1)以bs用户登录BOOKSALES数据库,将表1至表6中的数据插入到数据库的相应表中。
CUSTOMERS:
insert into customers values(seq_customers.nextval,'王牧','83823422','Wangmu@snia.com',' 北京','110010');
insert into customers values(seq_customers.nextval,'李青','83824566','Liqing@snia.com','大连','116023');
PUBLISHERS:
insert into publishers values(1,'电子工业出版社','张芳','56231234');
insert into publishers values(2,'机械工业出版社','孙翔','89673456');
ORDERS:
insert into orders values(SEQ_ORDERS.nextval,1,to_date(TO_CHAR('2019-02-01'),'YYYY-MM-DD'),to_dat e(TO_CHAR('2019-02-05'),'YYYY-MM-DD'),'大连','116023');
insert into orders values(SEQ_ORDERS.nextval,2,to_date(TO_CHAR('2019-03-01'),'YYYY-MM-DD'),to_dat e(TO_CHAR('2019-03-10'),'YYYY-MM-DD'),'大连','116023');
ORDERITEM:
insert into orderitem values(1000,1,'978-7-121-18619-8',5);
(2)将ISBN为978-7-121-18619-8的图书的零售价格(retail)修改为30。
UPDATE BOOKS
SET RETRIL=30 WHERE ISBN='978-7-121-18619-8';
(3)将订单号为1000的订单的发货日期修改为“2013-2-2”。
UPDATE ORDERS
SET SHIPDATE=to_date(TO_CHAR('2013-02-02'),'YYYY-MM-DD')
WHERE ORDER_ID=1000;
(4)已知当前有一个图书表OLDPUBLISHERS,其表中数据如下:
publisher_id |
name |
contact |
phone |
1 |
电子工业出版社 |
李明 |
0531-86362790 |
2 |
机械工业出版社 |
孙浩 |
13786901456 |
3 |
人民邮电出版社 |
张春 |
3449876 |
4 |
传智播客 |
吴瑞 |
997990 |
请将表中的数据与PUBLISHERS中的数据进行合并。
创建OLDPUBLISHERS:
Create table OLDPUBLISHERS(
publisher_id number(2) primary key,
name VARCHAR2(50),
contact char(10),
phone VARCHAR2(50)
)
Tablespace BOOKTBS1;
合并:
Merge into publishers p using oldpublishers o
on (p.publisher_id=o.publisher_id)
When matched then update set
p.name = o.name,p.contact = o.contact,p.phone= o.phone
when not matched then insert
Values (o.publisher_id,o.name,o.contact,o.phone);
Select * From publishers;
(5)列出BOOKS表中有图书类型非空的图书书名。
select title
from books
where category is not null;
(6)列出BOOKS表中每本书的书名和出版日期,对pubdate字段使用Publication Date列标题。
select title,pubdate "PublicationDate"
from books;
(7)列出CUSTOMERS表中每一个客户的客户号及他们所在的地址。
select customer_id,address
from customers;
(8)创建一个包含各个出版社的名称、联系人及出版社电话号码的列表。其中,联系人的列在显示的结果中重命名为Contact Person
select name,contact "ContactPerson",phone
from publishers;
(9)查询下达了订单的每一个客户的客户号。
select customer_id
from orders
where order_id is not null;
(10)查询2013年3月1日之后发货的订单。
select *
from orders
where shipdate > to_date('2013-3-1','yyyy-mm-dd');
(11)查询居住在北京或大连的客户,将结果按姓名的升序排列。
select *
from customers
where address='大连' or address='北京'
order by name;
(12)列出姓“王”的作者编写的所有图书信息,并将结果按姓名降序排序。
select *
from books
where author like '王%'
order by author;
(13)查询“儿童”类和“烹饪”类的所有图书。
select *
from books
where category='儿童' or category='烹饪';
(14)查询书名的第二个字母是“A”、第四个字母是“N”的图书信息。
select *
from books
where title like '_A_N%';
(15)查询电子工业出版社在2012年出版的所有“计算机”类图书的名称。
select title
from books
where publisher_id=(
select publisher_id
from publishers
where name='电子工业出版社')and extract(year from pubdate)='2012'
and category='计 算机';
(16)查询图书名称、出版社名称、出版社联系人的名称和电话号码。
select title,name,contact,phone
from books,publishers
where books.publisher_id=publishers.publisher_id;
(17)查询当前还没有发货的订单信息及下达订单的用户名,查询结果按下达订单日期排序。
select order_id,customers.name,orderdate,shipdate,shipaddress,shipcode
from customers,orders
where customers.customer_id=orders.customer_id and
shipdate>=to_date('2022-05-05','yyyy-mm-dd')order by orderdate;
(18)查询已经购买了“计算机”类图书的所有人的客户号和姓名。
select customers.customer_id,customers.name
from customers,orders,orderitem,books
where customers.customer_id = orders.customer_id
and orders.order_id=orderitem.order_id and
orderitem.isbn=books.isbn and books.category='计算机';
(19)查询“王牧”购买的图书的ISBN以及书名。
select books.isbn,books.title
from books,customers,orders,orderitem
where
customers.customer_id=orders.customer_id and orders.order_id=orderitem.order_id and
orderitem.isbn=books.isbn and customers.name='王牧';
(20)查询订购图书“Oracle数据库基础”的客户将收到什么样的礼品。
Select name
from promotion
Where(
select quantity*books.retril
from customers,books,orders,orderitem
where
customers.customer_id=orders.customer_id and orders.order_id=orderitem.order_id and
orderitem.isbn=books.isbn and books.title='Oracle'
) >promotion.minretail;
(21)确定客户“张扬”订购的图书的作者。
select books.author
from books,orderitem,orders,customers
where books.isbn=orderitem.isbn
and orderitem.order_id=orders.order_id
and orders.customer_id=customers.customer_id
and customers.name='张扬';
(22)查询CUSTOMERS表中的每一个客户所下达的订单数量。
订单数量:
select customers.customer_id,customers.name,count(orders.order_id) as orders_count
from customers,orders
where customers.customer_id=orders.customer_id
group by customers.customer_id,customers.name;
图书数量:
select customers.customer_id,customers.name,books.title,orderitem.quantity
from customers,orders,books,orderitem where
customers.customer_id=orders.customer_id and
orders.order_id=orderitem.order_id and orderitem.isbn=books.isbn;
(23)查询价格低于同一种类图书平均价格的图书的信息。
价格低于同一种类图书平均价格的图书:
select *
from books b1
where b1.retril<(select avg(b2.retril)
From books b2
where b1.category=b2.category
);
价格低于所有种类图书平均价格的图书:
select *
from books
where books.retril<(select avg(books.retril)
From books
);
(24)查询每个出版社出版图书的平均价格、最高价格、最低价格。
select publishers.name,avg(books.cost),min(books.cost),max(books.cost)
from books,publishers
where books.publisher_id=publishers.publisher_id
group by name;
(25)统计每个客户购买图书的数量及总价钱。
select customers.name,sum(quantity),sum(quantity*books.retril)
from customers,books,orders,orderitem
where
customers.customer_id=orders.customer_id and orders.order_id=orderitem.order_id and
orderitem.isbn=books.isbn group by customers.name;
(26)查询比1000号订单中图书数量多的其他订单信息。
select order_id,sum(quantity)
from orderitem
group by order_id
having sum(quantity) > (select sum(quantity)
from orderitem g
roup by order_id
having order_id=1000);
(27)查询所有客户及其订购图书的信息。
select *
from customers,orders,books,orderitem
where
customers.customer_id=orders.customer_id and
orders.order_id=orderitem.order_id and orderitem.isbn=books.isbn;
(28)查询没有订购任何图书的客户信息。
select customers.customer_id
from customers,orders,orderitem
where
customers.customer_id=orders.customer_id
and orders.order_id=orderitem.order_id and orders.order_id is null;
(29)查询订购金额最高的客户信息。
select *
from
(select customers.customer_id,sum(quantity),sum(quantity*books.retril)as cost_total
from customers,books,orders,orderitem
where
customers.customer_id=orders.customer_id and orders.order_id=orderitem.order_id and
orderitem.isbn=books.isbn group by customers.customer_id
order by cost_total desc
)max1,customers
where rownum < 2;
或:
select customers.customer_id,customers.name,customers.address,
customers.phone,customers.email,customers.code
from
(select customers.customer_id,sum(quantity),sum(quantity*books.retril)as cost_total
from customers,books,orders,orderitem
where
customers.customer_id=orders.customer_id and orders.order_id=orderitem.order_id and
orderitem.isbn=books.isbn group by customers.customer_id
order by cost_total desc
)max1,customers
where rownum < 2;
(30)查询名为“赵敏”的客户订购图书的订单信息、订单明细。
select *
from customers,orders
where orders.customer_id = customers.customer_id and customers.name='赵敏';
(31)完成课本P142页实训题中的偶数题目。
创建所需表及插入所需数据:
CREATE TABLE regions
( region_id NUMBER PRIMARY KEY,
region_name VARCHAR2(25)
)
TABLESPACE USERS;
--创建COUNTRIES表
PROMPT
PROMPT 创建COUNTRIES表......
CREATE TABLE countries
( country_id CHAR(2) PRIMARY KEY,
country_name VARCHAR2(40),
region_id NUMBER REFERENCES regions(region_id)
)
ORGANIZATION INDEX
TABLESPACE USERS;
--创建LOCATIONS表
PROMPT
PROMPT 创建LOCATIONS表......
CREATE TABLE locations
( location_id NUMBER(4) PRIMARY KEY,
street_address VARCHAR2(40),
postal_code VARCHAR2(12),
city VARCHAR2(30) NOT NULL,
state_province VARCHAR2(25),
country_id CHAR(2) REFERENCES countries(country_id)
)
TABLESPACE USERS;
--创建DEPARTMENTS表
PROMPT
PROMPT 创建DEPARTMENTS表......
CREATE TABLE departments
( department_id NUMBER(4) PRIMARY KEY,
department_name VARCHAR2(30) NOT NULL,
manager_id NUMBER(6) ,
location_id NUMBER(4) REFERENCES locations (location_id)
)
TABLESPACE USERS;
--创建JOBS表
PROMPT
PROMPT 创建JOBS表......
CREATE TABLE jobs
( job_id VARCHAR2(10) PRIMARY KEY,
job_title VARCHAR2(35) NOT NULL,
min_salary NUMBER(6),
max_salary NUMBER(6)
)
TABLESPACE USERS;
--创建EMPLOYEES表
PROMPT
PROMPT 创建EMPLOYEES表......
CREATE TABLE employees
( employee_id NUMBER(6) PRIMARY KEY,
first_name VARCHAR2(20),
last_name VARCHAR2(25) NOT NULL,
email VARCHAR2(25) NOT NULL UNIQUE,
phone_number VARCHAR2(20),
hire_date DATE NOT NULL,
job_id VARCHAR2(10) NOT NULL REFERENCES jobs (job_id),
salary NUMBER(8,2) CHECK (salary > 0),
commission_pct NUMBER(2,2),
manager_id NUMBER(6),
department_id NUMBER(4) REFERENCES departments(department_id)
)
TABLESPACE USERS;
--创建JOB_HISTORY表
PROMPT
PROMPT 创建JOB_HISTORY表......
CREATE TABLE job_history
( employee_id NUMBER(6) NOT NULL REFERENCES employees(employee_id),
start_date DATE NOT NULL,
end_date DATE NOT NULL,
job_id VARCHAR2(10) NOT NULL REFERENCES jobs(job_id),
department_id NUMBER(4) REFERENCES departments(department_id),
CONSTRAINT jhist_date_interval CHECK (end_date > start_date),
CONSTRAINT jhist_emp_id_st_date_pk PRIMARY KEY (employee_id, start_date)
)
TABLESPACE USERS;
--创建SAL_GRADES表
PROMPT
PROMPT 创建SAL_GRADES表......
CREATE TABLE sal_grades
(grade NUMBER PRIMARY KEY,
min_salary NUMBER(8,2),
max_salary NUMBER(8,2)
)
TABLESPACE USERS;
--创建MANAGER表
PROMPT
PROMPT 创建MANAGER表......
CREATE TABLE managers(
manager_id NUMBER(2)PRIMARY KEY,
manager_name CHAR(20),
password VARCHAR2(20) NOT NULL
)
TABLESPACE USERS;
--为departments表的manager_id列添加外键约束
PROMPT
PROMPT 添加外键约束......
ALTER TABLE departments ADD CONSTRAINT dept_mgr_fk FOREIGN KEY(manager_id) references employees(employee_id) DISABLE;
--为employees表的manager_id列添加外键约束
ALTER TABLE employees ADD CONSTRAINT emp_mgr_fk FOREIGN KEY(manager_id) references employees(employee_id) DISABLE;
插入数据:
Prompt ****** Populating REGIONS table ....
INSERT INTO regions VALUES (1, 'Europe');
INSERT INTO regions VALUES (2, 'Americas');
INSERT INTO regions VALUES (3, 'Asia');
INSERT INTO regions VALUES (4, 'Middle East and Africa');
Prompt ****** Populating COUNTIRES table ....
INSERT INTO countries VALUES( 'IT', 'Italy',1);
INSERT INTO countries VALUES( 'JP', 'Japan',3);
INSERT INTO countries VALUES( 'US', 'United States of America',2);
INSERT INTO countries VALUES( 'CA', 'Canada',2);
INSERT INTO countries VALUES( 'CN', 'China',3);
INSERT INTO countries VALUES( 'IN', 'India',3);
INSERT INTO countries VALUES( 'AU', 'Australia',3);
INSERT INTO countries VALUES( 'ZW', 'Zimbabwe',4);
INSERT INTO countries VALUES( 'SG', 'Singapore',3);
INSERT INTO countries VALUES( 'UK', 'United Kingdom',1);
INSERT INTO countries VALUES( 'FR', 'France',1);
INSERT INTO countries VALUES( 'DE', 'Germany',1);
INSERT INTO countries VALUES( 'ZM', 'Zambia', 4);
INSERT INTO countries VALUES( 'EG', 'Egypt', 4);
INSERT INTO countries VALUES( 'BR', 'Brazil', 2);
INSERT INTO countries VALUES( 'CH', 'Switzerland', 1);
INSERT INTO countries VALUES( 'NL', 'Netherlands', 1);
INSERT INTO countries VALUES( 'MX', 'Mexico', 2);
INSERT INTO countries VALUES( 'KW', 'Kuwait', 4);
INSERT INTO countries VALUES( 'IL', 'Israel', 4);
INSERT INTO countries VALUES( 'DK', 'Denmark', 1);
INSERT INTO countries VALUES( 'HK', 'HongKong', 3);
INSERT INTO countries VALUES( 'NG', 'Nigeria' , 4);
INSERT INTO countries VALUES( 'AR', 'Argentina', 2);
INSERT INTO countries VALUES( 'BE', 'Belgium', 1);
Prompt ****** Populating LOCATIONS table ....
INSERT INTO locations VALUES( locations_seq.nextval, '1297 Via Cola di Rie','00989', 'Roma', NULL, 'IT');
INSERT INTO locations VALUES( locations_seq.nextval, '93091 Calle della Testa','10934', 'Venice', NULL, 'IT');
INSERT INTO locations VALUES( locations_seq.nextval, '2017 Shinjuku-ku', '1689','Tokyo', 'Tokyo Prefecture', 'JP');
INSERT INTO locations VALUES( locations_seq.nextval, '9450 Kamiya-cho', '6823', 'Hiroshima', NULL, 'JP');
INSERT INTO locations VALUES( locations_seq.nextval, '2014 Jabberwocky Rd', '26192', 'Southlake', 'Texas', 'US');
INSERT INTO locations VALUES( locations_seq.nextval, '2011 Interiors Blvd', '99236', 'South San Francisco', 'California', 'US');
INSERT INTO locations VALUES( locations_seq.nextval, '2007 Zagora St', '50090', 'South Brunswick', 'New Jersey', 'US');
INSERT INTO locations VALUES( locations_seq.nextval, '2004 Charade Rd', '98199', 'Seattle', 'Washington', 'US');
INSERT INTO locations VALUES( locations_seq.nextval, '147 Spadina Ave', 'M5V 2L7', 'Toronto', 'Ontario', 'CA');
INSERT INTO locations VALUES( locations_seq.nextval, '6092 Boxwood St', 'YSW 9T2', 'Whitehorse', 'Yukon', 'CA');
INSERT INTO locations VALUES( locations_seq.nextval, '40-5-12 Laogianggen', '190518', 'Beijing', NULL, 'CN');
INSERT INTO locations VALUES( locations_seq.nextval, '1298 Vileparle (E)', '490231', 'Bombay', 'Maharashtra', 'IN');
INSERT INTO locations VALUES( locations_seq.nextval, '12-98 Victoria Street', '2901', 'Sydney', 'New South Wales', 'AU');
INSERT INTO locations VALUES( locations_seq.nextval, '198 Clementi North', '540198', 'Singapore', NULL, 'SG');
INSERT INTO locations VALUES( locations_seq.nextval, '8204 Arthur St', NULL, 'London', NULL, 'UK');
INSERT INTO locations VALUES( locations_seq.nextval, 'Magdalen Centre, The Oxford Science Park', 'OX9 9ZB', 'Oxford', 'Oxford', 'UK');
INSERT INTO locations VALUES( locations_seq.nextval, '9702 Chester Road', '09629850293', 'Stretford', 'Manchester', 'UK');
INSERT INTO locations VALUES( locations_seq.nextval, 'Schwanthalerstr. 7031', '80925', 'Munich', 'Bavaria', 'DE');
INSERT INTO locations VALUES( locations_seq.nextval, 'Rua Frei Caneca 1360 ', '01307-002', 'Sao Paulo', 'Sao Paulo', 'BR');
INSERT INTO locations VALUES( locations_seq.nextval, '20 Rue des Corps-Saints', '1730', 'Geneva', 'Geneve', 'CH');
INSERT INTO locations VALUES( locations_seq.nextval, 'Murtenstrasse 921', '3095', 'Bern', 'BE', 'CH');
INSERT INTO locations VALUES( locations_seq.nextval, 'Pieter Breughelstraat 837', '3029SK', 'Utrecht', 'Utrecht', 'NL');
INSERT INTO locations VALUES( locations_seq.nextval, 'Mariano Escobedo 9991', '11932', 'Mexico City', 'Distrito Federal,', 'MX');
Prompt ****** Populating DEPARTMENTS table ....
INSERT INTO departments VALUES(departments_seq.nextval, 'Administration', 201, 1700);
INSERT INTO departments VALUES(departments_seq.nextval, 'Marketing', 201, 1800);
INSERT INTO departments VALUES(departments_seq.nextval, 'Purchasing', 114, 1700);
INSERT INTO departments VALUES(departments_seq.nextval, 'Human Resources', 203, 2400);
INSERT INTO departments VALUES(departments_seq.nextval, 'Shipping', 121, 1500);
INSERT INTO departments VALUES(departments_seq.nextval, 'IT', 103, 1400);
INSERT INTO departments VALUES(departments_seq.nextval, 'Public Relations', 204, 2700);
INSERT INTO departments VALUES(departments_seq.nextval, 'Sales', 145, 2500);
INSERT INTO departments VALUES(departments_seq.nextval, 'Executive', 101, 1700);
INSERT INTO departments VALUES(departments_seq.nextval, 'Finance', 108, 1700);
INSERT INTO departments VALUES(departments_seq.nextval, 'Accounting', 205, 1700);
INSERT INTO departments VALUES(departments_seq.nextval, 'Treasury', NULL, 1700);
INSERT INTO departments VALUES(departments_seq.nextval, 'Corporate Tax', NULL, 1700);
INSERT INTO departments VALUES(departments_seq.nextval, 'Control And Credit', NULL, 1700);
INSERT INTO departments VALUES(departments_seq.nextval, 'Shareholder Services', NULL, 1700);
INSERT INTO departments VALUES(departments_seq.nextval, 'Benefits', NULL, 1700);
INSERT INTO departments VALUES(departments_seq.nextval, 'Manufacturing', NULL, 1700);
INSERT INTO departments VALUES(departments_seq.nextval, 'Construction', NULL, 1700);
INSERT INTO departments VALUES(departments_seq.nextval, 'Contracting', NULL, 1700);
INSERT INTO departments VALUES(departments_seq.nextval, 'Operations', NULL, 1700);
INSERT INTO departments VALUES(departments_seq.nextval, 'IT Support', NULL, 1700);
INSERT INTO departments VALUES(departments_seq.nextval, 'NOC', NULL, 1700);
INSERT INTO departments VALUES(departments_seq.nextval, 'IT Helpdesk', NULL, 1700);
INSERT INTO departments VALUES(departments_seq.nextval, 'Government Sales', NULL, 1700);
INSERT INTO departments VALUES(departments_seq.nextval, 'Retail Sales', NULL, 1700);
INSERT INTO departments VALUES(departments_seq.nextval, 'Recruiting', NULL, 1700);
INSERT INTO departments VALUES(departments_seq.nextval, 'Payroll', NULL, 1700);
Prompt ****** Populating JOBS table ....
INSERT INTO jobs VALUES( 'AD_PRES', 'President', 20000, 40000);
INSERT INTO jobs VALUES( 'AD_VP', 'Administration Vice President', 15000, 30000);
INSERT INTO jobs VALUES( 'AD_ASST', 'Administration Assistant', 3000, 6000);
INSERT INTO jobs VALUES( 'FI_MGR', 'Finance Manager', 8200, 16000);
INSERT INTO jobs VALUES( 'FI_ACCOUNT', 'Accountant', 4200, 9000);
INSERT INTO jobs VALUES( 'AC_MGR', 'Accounting Manager', 8200, 16000);
INSERT INTO jobs VALUES( 'AC_ACCOUNT', 'Public Accountant', 4200, 9000);
INSERT INTO jobs VALUES( 'SA_MAN', 'Sales Manager', 10000, 20000);
INSERT INTO jobs VALUES( 'SA_REP', 'Sales Representative', 6000, 12000);
INSERT INTO jobs VALUES( 'PU_MAN', 'Purchasing Manager', 8000, 15000);
INSERT INTO jobs VALUES( 'PU_CLERK', 'Purchasing Clerk', 2500, 5500);
INSERT INTO jobs VALUES( 'ST_MAN', 'Stock Manager', 5500, 8500);
INSERT INTO jobs VALUES( 'ST_CLERK', 'Stock Clerk', 2000, 5000);
INSERT INTO jobs VALUES( 'SH_CLERK', 'Shipping Clerk', 2500, 5500);
INSERT INTO jobs VALUES( 'IT_PROG', 'Programmer', 4000, 10000);
INSERT INTO jobs VALUES( 'MK_MAN', 'Marketing Manager', 9000, 15000);
INSERT INTO jobs VALUES( 'MK_REP', 'Marketing Representative', 4000, 9000);
INSERT INTO jobs VALUES( 'HR_REP', 'Human Resources Representative', 4000, 9000);
INSERT INTO jobs VALUES( 'PR_REP', 'Public Relations Representative', 4500, 10500);
Prompt ****** Populating EMPLOYEES table ....
INSERT INTO employees VALUES( employees_seq.nextval, 'Steven', 'King', 'SKING', '515.123.4567', TO_DATE('17-JUN-1987', 'dd-MON-yyyy'),'AD_PRES', 24000, NULL, NULL, 90);
INSERT INTO employees VALUES( employees_seq.nextval, 'Neena', 'Kochhar', 'NKOCHHAR', '515.123.4568', TO_DATE('21-SEP-1989', 'dd-MON-yyyy'), 'AD_VP',17000, NULL, 100, 90);
INSERT INTO employees VALUES( employees_seq.nextval, 'Lex', 'De Haan', 'LDEHAAN', '515.123.4569', TO_DATE('13-JAN-1993', 'dd-MON-yyyy'), 'AD_VP', 17000, NULL, 100, 90);
INSERT INTO employees VALUES( employees_seq.nextval, 'Alexander', 'Hunold', 'AHUNOLD', '590.423.4567', TO_DATE('03-JAN-1990', 'dd-MON-yyyy'), 'IT_PROG', 9000, NULL, 102, 60);
INSERT INTO employees VALUES( employees_seq.nextval, 'Bruce', 'Ernst', 'BERNST', '590.423.4568', TO_DATE('21-MAY-1991', 'dd-MON-yyyy'), 'IT_PROG',6000, NULL, 103, 60);
INSERT INTO employees VALUES( employees_seq.nextval, 'David', 'Austin', 'DAUSTIN', '590.423.4569', TO_DATE('25-JUN-1997', 'dd-MON-yyyy'), 'IT_PROG', 4800, NULL, 103, 60);
INSERT INTO employees VALUES( employees_seq.nextval, 'Valli', 'Pataballa', 'VPATABAL', '590.423.4560', TO_DATE('05-FEB-1998', 'dd-MON-yyyy'), 'IT_PROG', 4800, NULL, 103, 60);
INSERT INTO employees VALUES( employees_seq.nextval, 'Diana', 'Lorentz', 'DLORENTZ', '590.423.5567', TO_DATE('07-FEB-1999', 'dd-MON-yyyy'), 'IT_PROG', 4200, NULL, 103, 60);
INSERT INTO employees VALUES( employees_seq.nextval, 'Nancy', 'Greenberg', 'NGREENBE', '515.124.4569', TO_DATE('17-AUG-1994', 'dd-MON-yyyy'), 'FI_MGR', 12000, NULL, 101, 100);
INSERT INTO employees VALUES( employees_seq.nextval, 'Daniel', 'Faviet', 'DFAVIET', '515.124.4169', TO_DATE('16-AUG-1994', 'dd-MON-yyyy'), 'FI_ACCOUNT',9000, NULL, 108, 100);
INSERT INTO employees VALUES( employees_seq.nextval, 'John', 'Chen', 'JCHEN', '515.124.4269', TO_DATE('28-SEP-1997', 'dd-MON-yyyy'), 'FI_ACCOUNT', 8200, NULL, 108, 100);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Ismael', 'Sciarra', 'ISCIARRA', '515.124.4369', TO_DATE('30-SEP-1997', 'dd-MON-yyyy'), 'FI_ACCOUNT', 7700, NULL, 108, 100);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Jose Manuel', 'Urman', 'JMURMAN', '515.124.4469', TO_DATE('07-MAR-1998', 'dd-MON-yyyy'), 'FI_ACCOUNT', 7800, NULL, 108, 100);
INSERT INTO employees VALUES( employees_seq.nextval, 'Luis', 'Popp', 'LPOPP', '515.124.4567', TO_DATE('07-DEC-1999', 'dd-MON-yyyy'), 'FI_ACCOUNT', 6900, NULL, 108, 100);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Den', 'Raphaely', 'DRAPHEAL', '515.127.4561', TO_DATE('07-DEC-1994', 'dd-MON-yyyy'), 'PU_MAN', 11000, NULL, 100, 30);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Alexander', 'Khoo', 'AKHOO', '515.127.4562', TO_DATE('18-MAY-1995', 'dd-MON-yyyy'), 'PU_CLERK',3100, NULL, 114, 30);
INSERT INTO employees VALUES( employees_seq.nextval, 'Shelli', 'Baida', 'SBAIDA', '515.127.4563', TO_DATE('24-DEC-1997', 'dd-MON-yyyy'), 'PU_CLERK', 2900, NULL, 114, 30);
INSERT INTO employees VALUES( employees_seq.nextval, 'Sigal', 'Tobias', 'STOBIAS', '515.127.4564', TO_DATE('24-JUL-1997', 'dd-MON-yyyy'), 'PU_CLERK',2800, NULL, 114, 30);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Guy', 'Himuro', 'GHIMURO', '515.127.4565', TO_DATE('15-NOV-1998', 'dd-MON-yyyy'), 'PU_CLERK', 2600, NULL, 114, 30);
INSERT INTO employees VALUES( employees_seq.nextval, 'Karen', 'Colmenares', 'KCOLMENA', '515.127.4566', TO_DATE('10-AUG-1999', 'dd-MON-yyyy'), 'PU_CLERK', 2500, NULL, 114, 30);
INSERT INTO employees VALUES( employees_seq.nextval, 'Matthew', 'Weiss', 'MWEISS', '650.123.1234', TO_DATE('18-JUL-1996', 'dd-MON-yyyy'), 'ST_MAN', 8000, NULL, 100, 50);
INSERT INTO employees VALUES( employees_seq.nextval, 'Adam', 'Fripp', 'AFRIPP', '650.123.2234', TO_DATE('10-APR-1997', 'dd-MON-yyyy'), 'ST_MAN', 8200, NULL, 100, 50);
INSERT INTO employees VALUES( employees_seq.nextval, 'Payam', 'Kaufling', 'PKAUFLIN', '650.123.3234', TO_DATE('01-MAY-1995', 'dd-MON-yyyy'), 'ST_MAN', 7900, NULL, 100, 50);
INSERT INTO employees VALUES( employees_seq.nextval, 'Shanta', 'Vollman', 'SVOLLMAN', '650.123.4234', TO_DATE('10-OCT-1997', 'dd-MON-yyyy'), 'ST_MAN', 6500, NULL, 100, 50);
INSERT INTO employees VALUES( employees_seq.nextval, 'Kevin', 'Mourgos', 'KMOURGOS', '650.123.5234', TO_DATE('16-NOV-1999', 'dd-MON-yyyy'), 'ST_MAN', 5800, NULL, 100, 50);
INSERT INTO employees VALUES( employees_seq.nextval, 'Julia', 'Nayer', 'JNAYER', '650.124.1214', TO_DATE('16-JUL-1997', 'dd-MON-yyyy'), 'ST_CLERK', 3200, NULL, 120, 50);
INSERT INTO employees VALUES( employees_seq.nextval, 'Irene', 'Mikkilineni', 'IMIKKILI', '650.124.1224', TO_DATE('28-SEP-1998', 'dd-MON-yyyy'), 'ST_CLERK', 2700, NULL, 120, 50);
INSERT INTO employees VALUES( employees_seq.nextval, 'James', 'Landry', 'JLANDRY', '650.124.1334', TO_DATE('14-JAN-1999', 'dd-MON-yyyy'), 'ST_CLERK', 2400, NULL, 120, 50);
INSERT INTO employees VALUES( employees_seq.nextval, 'Steven', 'Markle', 'SMARKLE', '650.124.1434', TO_DATE('08-MAR-2000', 'dd-MON-yyyy'), 'ST_CLERK', 2200, NULL, 120, 50);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Laura', 'Bissot', 'LBISSOT', '650.124.5234', TO_DATE('20-AUG-1997', 'dd-MON-yyyy'), 'ST_CLERK', 3300, NULL, 121, 50);
INSERT INTO employees VALUES( employees_seq.nextval, 'Mozhe', 'Atkinson', 'MATKINSO', '650.124.6234', TO_DATE('30-OCT-1997', 'dd-MON-yyyy'), 'ST_CLERK', 2800, NULL, 121, 50);
INSERT INTO employees VALUES( employees_seq.nextval, 'James', 'Marlow', 'JAMRLOW', '650.124.7234', TO_DATE('16-FEB-1997', 'dd-MON-yyyy'), 'ST_CLERK', 2500, NULL, 121, 50);
INSERT INTO employees VALUES( employees_seq.nextval, 'TJ', 'Olson', 'TJOLSON', '650.124.8234', TO_DATE('10-APR-1999', 'dd-MON-yyyy'), 'ST_CLERK', 2100, NULL, 121, 50);
INSERT INTO employees VALUES( employees_seq.nextval, 'Jason', 'Mallin', 'JMALLIN', '650.127.1934', TO_DATE('14-JUN-1996', 'dd-MON-yyyy'), 'ST_CLERK', 3300, NULL, 122, 50);
INSERT INTO employees VALUES( employees_seq.nextval, 'Michael', 'Rogers', 'MROGERS', '650.127.1834', TO_DATE('26-AUG-1998', 'dd-MON-yyyy'), 'ST_CLERK', 2900, NULL, 122, 50);
INSERT INTO employees VALUES( employees_seq.nextval, 'Ki', 'Gee', 'KGEE', '650.127.1734', TO_DATE('12-DEC-1999', 'dd-MON-yyyy'), 'ST_CLERK', 2400, NULL, 122, 50);
INSERT INTO employees VALUES( employees_seq.nextval, 'Hazel', 'Philtanker', 'HPHILTAN', '650.127.1634', TO_DATE('06-FEB-2000', 'dd-MON-yyyy'), 'ST_CLERK', 2200, NULL, 122, 50);
INSERT INTO employees VALUES( employees_seq.nextval, 'Renske', 'Ladwig', 'RLADWIG', '650.121.1234', TO_DATE('14-JUL-1995', 'dd-MON-yyyy'), 'ST_CLERK', 3600, NULL, 123, 50);
INSERT INTO employees VALUES( employees_seq.nextval, 'Stephen', 'Stiles', 'SSTILES', '650.121.2034', TO_DATE('26-OCT-1997', 'dd-MON-yyyy'), 'ST_CLERK', 3200, NULL, 123, 50);
INSERT INTO employees VALUES ( employees_seq.nextval, 'John', 'Seo', 'JSEO', '650.121.2019', TO_DATE('12-FEB-1998', 'dd-MON-yyyy'), 'ST_CLERK', 2700, NULL, 123, 50);
INSERT INTO employees VALUES( employees_seq.nextval, 'Joshua', 'Patel', 'JPATEL', '650.121.1834', TO_DATE('06-APR-1998', 'dd-MON-yyyy'), 'ST_CLERK', 2500, NULL, 123, 50);
INSERT INTO employees VALUES( employees_seq.nextval, 'Trenna', 'Rajs', 'TRAJS', '650.121.8009', TO_DATE('17-OCT-1995', 'dd-MON-yyyy'), 'ST_CLERK', 3500, NULL, 124, 50);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Curtis', 'Davies', 'CDAVIES', '650.121.2994', TO_DATE('29-JAN-1997', 'dd-MON-yyyy'), 'ST_CLERK', 3100, NULL, 124, 50);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Randall', 'Matos', 'RMATOS', '650.121.2874', TO_DATE('15-MAR-1998', 'dd-MON-yyyy'), 'ST_CLERK', 2600, NULL, 124, 50);
INSERT INTO employees VALUES( employees_seq.nextval, 'Peter', 'Vargas', 'PVARGAS', '650.121.2004', TO_DATE('09-JUL-1998', 'dd-MON-yyyy'), 'ST_CLERK', 2500, NULL, 124, 50);
INSERT INTO employees VALUES( employees_seq.nextval, 'John', 'Russell', 'JRUSSEL', '011.44.1344.429268', TO_DATE('01-OCT-1996', 'dd-MON-yyyy'), 'SA_MAN', 14000, .4, 100, 80);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Karen', 'Partners', 'KPARTNER', '011.44.1344.467268', TO_DATE('05-JAN-1997', 'dd-MON-yyyy'), 'SA_MAN', 13500, .3, 100, 80);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Alberto', 'Errazuriz', 'AERRAZUR', '011.44.1344.429278', TO_DATE('10-MAR-1997', 'dd-MON-yyyy'), 'SA_MAN', 12000, .3, 100, 80);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Gerald', 'Cambrault', 'GCAMBRAU', '011.44.1344.619268', TO_DATE('15-OCT-1999', 'dd-MON-yyyy'), 'SA_MAN', 11000, .3, 100, 80);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Eleni', 'Zlotkey', 'EZLOTKEY', '011.44.1344.429018', TO_DATE('29-JAN-2000', 'dd-MON-yyyy'), 'SA_MAN', 10500, .2, 100, 80);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Peter', 'Tucker', 'PTUCKER', '011.44.1344.129268', TO_DATE('30-JAN-1997', 'dd-MON-yyyy'), 'SA_REP', 10000, .3, 145, 80);
INSERT INTO employees VALUES ( employees_seq.nextval, 'David', 'Bernstein', 'DBERNSTE', '011.44.1344.345268', TO_DATE('24-MAR-1997', 'dd-MON-yyyy'), 'SA_REP', 9500, .25, 145, 80);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Peter', 'Hall', 'PHALL', '011.44.1344.478968', TO_DATE('20-AUG-1997', 'dd-MON-yyyy'), 'SA_REP', 9000, .25, 145, 80);
INSERT INTO employees VALUES( employees_seq.nextval, 'Christopher', 'Olsen', 'COLSEN', '011.44.1344.498718', TO_DATE('30-MAR-1998', 'dd-MON-yyyy'), 'SA_REP', 8000, .2, 145, 80);
INSERT INTO employees VALUES( employees_seq.nextval, 'Nanette', 'Cambrault', 'NCAMBRAU', '011.44.1344.987668', TO_DATE('09-DEC-1998', 'dd-MON-yyyy'), 'SA_REP', 7500, .2, 145, 80);
INSERT INTO employees VALUES( employees_seq.nextval, 'Oliver', 'Tuvault', 'OTUVAULT', '011.44.1344.486508', TO_DATE('23-NOV-1999', 'dd-MON-yyyy'), 'SA_REP', 7000, .15, 145, 80);
INSERT INTO employees VALUES( employees_seq.nextval, 'Janette', 'King', 'JKING', '011.44.1345.429268', TO_DATE('30-JAN-1996', 'dd-MON-yyyy'), 'SA_REP', 10000, .35, 146, 80);
INSERT INTO employees VALUES( employees_seq.nextval, 'Patrick', 'Sully', 'PSULLY', '011.44.1345.929268', TO_DATE('04-MAR-1996', 'dd-MON-yyyy'), 'SA_REP', 9500, .35, 146, 80);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Allan', 'McEwen', 'AMCEWEN', '011.44.1345.829268', TO_DATE('01-AUG-1996', 'dd-MON-yyyy'), 'SA_REP', 9000, .35, 146, 80);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Lindsey', 'Smith', 'LSMITH', '011.44.1345.729268', TO_DATE('10-MAR-1997', 'dd-MON-yyyy'), 'SA_REP', 8000, .3, 146, 80);
INSERT INTO employees VALUES( employees_seq.nextval, 'Louise', 'Doran', 'LDORAN', '011.44.1345.629268', TO_DATE('15-DEC-1997', 'dd-MON-yyyy'), 'SA_REP', 7500, .3, 146, 80);
INSERT INTO employees VALUES( employees_seq.nextval, 'Sarath', 'Sewall', 'SSEWALL', '011.44.1345.529268', TO_DATE('03-NOV-1998', 'dd-MON-yyyy'), 'SA_REP', 7000, .25, 146, 80);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Clara', 'Vishney', 'CVISHNEY', '011.44.1346.129268', TO_DATE('11-NOV-1997', 'dd-MON-yyyy'), 'SA_REP', 10500, .25, 147, 80);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Danielle', 'Greene', 'DGREENE', '011.44.1346.229268', TO_DATE('19-MAR-1999', 'dd-MON-yyyy'), 'SA_REP', 9500, .15, 147, 80);
INSERT INTO employees VALUES( employees_seq.nextval, 'Mattea', 'Marvins', 'MMARVINS', '011.44.1346.329268', TO_DATE('24-JAN-2000', 'dd-MON-yyyy'), 'SA_REP', 7200, .10, 147, 80);
INSERT INTO employees VALUES( employees_seq.nextval, 'David', 'Lee', 'DLEE', '011.44.1346.529268', TO_DATE('23-FEB-2000', 'dd-MON-yyyy'), 'SA_REP', 6800, .1, 147, 80);
INSERT INTO employees VALUES( employees_seq.nextval, 'Sundar', 'Ande', 'SANDE', '011.44.1346.629268', TO_DATE('24-MAR-2000', 'dd-MON-yyyy'), 'SA_REP', 6400, .10, 147, 80);
INSERT INTO employees VALUES( employees_seq.nextval, 'Amit', 'Banda', 'ABANDA', '011.44.1346.729268', TO_DATE('21-APR-2000', 'dd-MON-yyyy'), 'SA_REP', 6200, .10, 147, 80);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Lisa', 'Ozer', 'LOZER', '011.44.1343.929268', TO_DATE('11-MAR-1997', 'dd-MON-yyyy'), 'SA_REP', 11500, .25, 148, 80);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Harrison', 'Bloom', 'HBLOOM', '011.44.1343.829268', TO_DATE('23-MAR-1998', 'dd-MON-yyyy'), 'SA_REP', 10000, .20, 148, 80);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Tayler', 'Fox', 'TFOX', '011.44.1343.729268', TO_DATE('24-JAN-1998', 'dd-MON-yyyy'), 'SA_REP', 9600, .20, 148, 80);
INSERT INTO employees VALUES ( employees_seq.nextval, 'William', 'Smith', 'WSMITH', '011.44.1343.629268', TO_DATE('23-FEB-1999', 'dd-MON-yyyy'), 'SA_REP', 7400, .15, 148, 80);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Elizabeth', 'Bates', 'EBATES', '011.44.1343.529268', TO_DATE('24-MAR-1999', 'dd-MON-yyyy'), 'SA_REP', 7300, .15, 148, 80);
INSERT INTO employees VALUES( employees_seq.nextval, 'Sundita', 'Kumar', 'SKUMAR', '011.44.1343.329268', TO_DATE('21-APR-2000', 'dd-MON-yyyy'), 'SA_REP', 6100, .10, 148, 80);
INSERT INTO employees VALUES( employees_seq.nextval, 'Ellen', 'Abel', 'EABEL', '011.44.1644.429267', TO_DATE('11-MAY-1996', 'dd-MON-yyyy'), 'SA_REP', 11000, .30, 149, 80);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Alyssa', 'Hutton', 'AHUTTON', '011.44.1644.429266', TO_DATE('19-MAR-1997', 'dd-MON-yyyy'), 'SA_REP', 8800, .25, 149, 80);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Jonathon', 'Taylor', 'JTAYLOR', '011.44.1644.429265', TO_DATE('24-MAR-1998', 'dd-MON-yyyy'), 'SA_REP', 8600, .20, 149, 80);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Jack', 'Livingston', 'JLIVINGS', '011.44.1644.429264', TO_DATE('23-APR-1998', 'dd-MON-yyyy'), 'SA_REP', 8400, .20, 149, 80);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Kimberely', 'Grant', 'KGRANT', '011.44.1644.429263', TO_DATE('24-MAY-1999', 'dd-MON-yyyy'), 'SA_REP', 7000, .15, 149, NULL);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Charles', 'Johnson', 'CJOHNSON', '011.44.1644.429262', TO_DATE('04-JAN-2000', 'dd-MON-yyyy'), 'SA_REP', 6200, .10, 149, 80);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Winston', 'Taylor', 'WTAYLOR', '650.507.9876', TO_DATE('24-JAN-1998', 'dd-MON-yyyy'), 'SH_CLERK', 3200, NULL, 120, 50);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Jean', 'Fleaur', 'JFLEAUR', '650.507.9877', TO_DATE('23-FEB-1998', 'dd-MON-yyyy'), 'SH_CLERK', 3100, NULL, 120, 50);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Martha', 'Sullivan', 'MSULLIVA', '650.507.9878', TO_DATE('21-JUN-1999', 'dd-MON-yyyy'), 'SH_CLERK', 2500, NULL, 120, 50);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Girard', 'Geoni', 'GGEONI', '650.507.9879', TO_DATE('03-FEB-2000', 'dd-MON-yyyy'), 'SH_CLERK', 2800, NULL, 120, 50);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Nandita', 'Sarchand', 'NSARCHAN', '650.509.1876', TO_DATE('27-JAN-1996', 'dd-MON-yyyy'), 'SH_CLERK', 4200, NULL, 121, 50);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Alexis', 'Bull', 'ABULL', '650.509.2876', TO_DATE('20-FEB-1997', 'dd-MON-yyyy'), 'SH_CLERK', 4100, NULL, 121, 50);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Julia', 'Dellinger', 'JDELLING', '650.509.3876', TO_DATE('24-JUN-1998', 'dd-MON-yyyy'), 'SH_CLERK', 3400, NULL, 121, 50);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Anthony', 'Cabrio', 'ACABRIO', '650.509.4876', TO_DATE('07-FEB-1999', 'dd-MON-yyyy'), 'SH_CLERK', 3000, NULL, 121, 50);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Kelly', 'Chung', 'KCHUNG', '650.505.1876', TO_DATE('14-JUN-1997', 'dd-MON-yyyy'), 'SH_CLERK', 3800, NULL, 122, 50);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Jennifer', 'Dilly', 'JDILLY', '650.505.2876', TO_DATE('13-AUG-1997', 'dd-MON-yyyy'), 'SH_CLERK', 3600, NULL, 122, 50);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Timothy', 'Gates', 'TGATES', '650.505.3876', TO_DATE('11-JUL-1998', 'dd-MON-yyyy'), 'SH_CLERK', 2900, NULL, 122, 50);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Randall', 'Perkins', 'RPERKINS', '650.505.4876', TO_DATE('19-DEC-1999', 'dd-MON-yyyy'), 'SH_CLERK', 2500, NULL, 122, 50);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Sarah', 'Bell', 'SBELL', '650.501.1876', TO_DATE('04-FEB-1996', 'dd-MON-yyyy'), 'SH_CLERK', 4000, NULL, 123, 50);
INSERT INTO employees VALUES (employees_seq.nextval, 'Britney', 'Everett', 'BEVERETT', '650.501.2876', TO_DATE('03-MAR-1997', 'dd-MON-yyyy'), 'SH_CLERK', 3900, NULL, 123, 50);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Samuel', 'McCain', 'SMCCAIN', '650.501.3876', TO_DATE('01-JUL-1998', 'dd-MON-yyyy'), 'SH_CLERK', 3200, NULL, 123, 50);
INSERT INTO employees VALUES( employees_seq.nextval, 'Vance', 'Jones', 'VJONES', '650.501.4876', TO_DATE('17-MAR-1999', 'dd-MON-yyyy'), 'SH_CLERK', 2800, NULL, 123, 50);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Alana', 'Walsh', 'AWALSH', '650.507.9811', TO_DATE('24-APR-1998', 'dd-MON-yyyy'), 'SH_CLERK', 3100, NULL, 124, 50);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Kevin', 'Feeney', 'KFEENEY', '650.507.9822', TO_DATE('23-MAY-1998', 'dd-MON-yyyy'), 'SH_CLERK', 3000, NULL, 124, 50);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Donald', 'OConnell', 'DOCONNEL', '650.507.9833', TO_DATE('21-JUN-1999', 'dd-MON-yyyy'), 'SH_CLERK', 2600, NULL, 124, 50);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Douglas', 'Grant', 'DGRANT', '650.507.9844', TO_DATE('13-JAN-2000', 'dd-MON-yyyy'), 'SH_CLERK', 2600, NULL, 124, 50);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Jennifer', 'Whalen', 'JWHALEN', '515.123.4444', TO_DATE('17-SEP-1987', 'dd-MON-yyyy'), 'AD_ASST', 4400, NULL, 101, 20);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Michael', 'Hartstein', 'MHARTSTE', '515.123.5555', TO_DATE('17-FEB-1996', 'dd-MON-yyyy'), 'MK_MAN', 13000, NULL, 100, 20);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Pat', 'Fay', 'PFAY', '603.123.6666', TO_DATE('17-AUG-1997', 'dd-MON-yyyy'), 'MK_REP', 6000, NULL, 201, 20);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Susan', 'Mavris', 'SMAVRIS', '515.123.7777', TO_DATE('07-JUN-1994', 'dd-MON-yyyy'), 'HR_REP', 6500, NULL, 101, 40);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Hermann', 'Baer', 'HBAER', '515.123.8888', TO_DATE('07-JUN-1994', 'dd-MON-yyyy'), 'PR_REP', 10000, NULL, 101, 70);
INSERT INTO employees VALUES ( employees_seq.nextval, 'Shelley', 'Higgins', 'SHIGGINS', '515.123.8080', TO_DATE('07-JUN-1994', 'dd-MON-yyyy'), 'AC_MGR', 12000, NULL, 101, 110);
INSERT INTO employees VALUES ( employees_seq.nextval, 'William', 'Gietz', 'WGIETZ', '515.123.8181', TO_DATE('07-JUN-1994', 'dd-MON-yyyy'), 'AC_ACCOUNT', 8300, NULL, 205, 110);
REM ********* insert data into the JOB_HISTORY table
Prompt ****** Populating JOB_HISTORY table ....
INSERT INTO job_history VALUES (102, TO_DATE('13-JAN-1993', 'dd-MON-yyyy'), TO_DATE('24-JUL-1998', 'dd-MON-yyyy'), 'IT_PROG', 60);
INSERT INTO job_history VALUES (101, TO_DATE('21-SEP-1989', 'dd-MON-yyyy') , TO_DATE('27-OCT-1993', 'dd-MON-yyyy') , 'AC_ACCOUNT' , 110);
INSERT INTO job_history VALUES (101 , TO_DATE('28-OCT-1993', 'dd-MON-yyyy') , TO_DATE('15-MAR-1997', 'dd-MON-yyyy') , 'AC_MGR' , 110);
INSERT INTO job_history VALUES (201 , TO_DATE('17-FEB-1996', 'dd-MON-yyyy') , TO_DATE('19-DEC-1999', 'dd-MON-yyyy') , 'MK_REP' , 20);
INSERT INTO job_history VALUES (114, TO_DATE('24-MAR-1998', 'dd-MON-yyyy'), TO_DATE('31-DEC-1999', 'dd-MON-yyyy'), 'ST_CLERK', 50);
INSERT INTO job_history VALUES (122, TO_DATE('01-JAN-1999', 'dd-MON-yyyy'), TO_DATE('31-DEC-1999', 'dd-MON-yyyy'), 'ST_CLERK', 50);
INSERT INTO job_history VALUES (200, TO_DATE('17-SEP-1987', 'dd-MON-yyyy'), TO_DATE('17-JUN-1993', 'dd-MON-yyyy'), 'AD_ASST', 90);
INSERT INTO job_history VALUES (176, TO_DATE('24-MAR-1998', 'dd-MON-yyyy'), TO_DATE('31-DEC-1998', 'dd-MON-yyyy'), 'SA_REP', 80);
INSERT INTO job_history VALUES (176, TO_DATE('01-JAN-1999', 'dd-MON-yyyy'), TO_DATE('31-DEC-1999', 'dd-MON-yyyy'), 'SA_MAN', 80);
INSERT INTO job_history VALUES (200, TO_DATE('01-JUL-1994', 'dd-MON-yyyy'), TO_DATE('31-DEC-1998', 'dd-MON-yyyy'), 'AC_ACCOUNT', 90);
REM ********* insert data into the SAL_GRADE table
Prompt ****** Populating SAL_GRADE table ....
INSERT INTO sal_grades VALUES(1,0,1000);
INSERT INTO sal_grades VALUES(2,1001,2000);
INSERT INTO sal_grades VALUES(3,2001,3000);
INSERT INTO sal_grades VALUES(4,3001,4000);
INSERT INTO sal_grades VALUES(5,4001,5000);
INSERT INTO sal_grades VALUES(6,5001,6000);
INSERT INTO sal_grades VALUES(7,6001,7000);
INSERT INTO sal_grades VALUES(8,7001,8000);
INSERT INTO sal_grades VALUES(9,8001,9000);
INSERT INTO sal_grades VALUES(10,9001,10000);
INSERT INTO sal_grades VALUES(11,10001,11000);
INSERT INTO sal_grades VALUES(12,11001,12000);
INSERT INTO sal_grades VALUES(13,12001,13000);
INSERT INTO sal_grades VALUES(14,13001,14000);
INSERT INTO sal_grades VALUES(15,14001,15000);
INSERT INTO sal_grades VALUES(16,15001,16000);
INSERT INTO sal_grades VALUES(17,16001,17000);
INSERT INTO sal_grades VALUES(18,17001,18000);
INSERT INTO sal_grades VALUES(19,18001,19000);
INSERT INTO sal_grades VALUES(20,19001,20000);
--p142偶数题
--(2)
SELECT employee_id,first_name,last_name,department_id
FROM employees
WHERE job_id = 'SA_MAN';
--(4)
SELECT *
FROM employees
WHERE department_id=40 AND job_id='AD_ASST'
OR department_id=20 AND job_id='SA_REP';
--(6)
SELECT distinct job_id,job_title
FROM jobs
WHERE job_id in
(SELECT job_id
FROM employees
WHERE COMMISSION_PCT is not null);
--(8)
SELECT first_name
FROM employees
WHERE first_name not LIKE '%S%';
--(10)
SELECT e1.first_name,e2.first_name as manager_name
FROM employees e1,employees e2
where e2.employee_id = e1.manager_id;
--(12)
SELECT d.department_id,d.department_name,l.street_address,e.first_name
FROM departments d , employees e ,locations l
where l.location_id=d.location_id and d.manager_id=e.employee_id;
--(14)
SELECT e.first_name,d.department_name
FROM employees e , departments d
where e.department_id=d.department_id
UNION ALL
SELECT first_name, null as department_name
FROM employees
where department_id is NULL ;
--(16)
SELECT DISTINCT d.*
FROM departments d , employees e
where e.department_id=d.department_id and e.employee_id is not NULL;
--(18)
SELECT *
FROM employees
WHERE salary>(
SELECT avg(salary)
FROM employees);
--(20)
SELECT d.department_id,d.department_name,count(*),avg(salary)
FROM employees e,departments d
where e.department_id=d.department_id
GROUP BY d.department_id,d.department_name;
--(22)
SELECT d.department_id,d.department_name,e.job_id,count(*),avg(salary)
FROM employees e,departments d
where e.department_id=d.department_id
GROUP BY d.department_id,d.department_name,e.job_id;
--(24)
SELECT e.*,d.*
FROM employees e , departments d
where e.department_id=d.department_id
AND e.department_id
IN(SELECT department_id
FROM employees
GROUP BY department_id
having avg(salary)<6000);
--(26)
select *
from employees
where job_id in(
select job_id
from employees
where employee_id=140);
--(28)
select d.department_id,d.department_name,
count(*),avg(salary),avg(round((sysdate-hire_date)/365))
from employees e,departments d
where d.department_id=e.department_id
group by d.department_id,d.department_name;
--(30)
select *
from employees e1
where e1.salary>(
select avg(salary)
from employees e2
where e2.department_id=e1.department_id
group by e2.department_id
);
--(32)
select *
from employees
where salary>any(
select salary
from employees
where department_id=50);
或:
select *
from employees
where salary>(
select min(salary)
from employees
where department_id=50
);
--(34)
select *
from employees
where department_id in(
select department_id
from employees
group by department_id
having count(*)>10);
--(36)
SELECT e.*,d.*
FROM employees e , departments d
where e.department_id=d.department_id
AND e.department_id
IN(SELECT department_id
FROM employees
GROUP BY department_id
having min(salary)>5000);
--(38)
select *
from departments
where department_id in(
select department_id from employees
group by department_id
having count(*)>=all(
select count(*)
from employees
group by department_id));
或:
select *
from departments
where departments.department_id in(
select department_id
from(
select count(department_id),department_id
from employees
group by department_id
order by count(department_id) desc
)
where rownum<2;
--(40)
--降序(工资):
select *
from (
select *
from (
select rownum rn,employee_id,salary
from(
select employee_id,salary
from employees
where salary is not null
order by salary desc) )
where rn between 5 and 10
)a,employees e
where a.employee_id=e.employee_id
order by rn asc
;
select *
from employees
where salary is not null
order by salary desc
offset 6 rows fetch first 6 rows with ties;
--升序(工资):
select *
from (
select *
from (
select rownum rn,employee_id,salary
from(
select employee_id,salary
from employees
where salary is not null
order by salary asc) )
where rn between 5 and 10
)a,employees e
where a.employee_id=e.employee_id
order by rn asc
;
--(42)
select *
from employees
where hire_date=last_day(hire_date)-1;
--(44)
select employee_id,concat(initcap(first_name),initcap(last_name))total_name
from employees;
--(46)
select *
from employees
where first_name like '_M%';
--(48)
select *
from employees
where extract(month from hire_date)=2;
--(50)
select *
from (
select *
from (
select rownum rn,employee_id,salary
from(
select employee_id,salary
from employees
where salary is not null
order by salary desc) )s
where rn >100
)a,employees e
where a.employee_id=e.employee_id
order by rn asc ;
或:
select *
from (
select *
from (
select rownum rn,employee_id,salary
from(
select employee_id,salary
from employees
where salary is not null
order by salary asc) )s
where rn >100
)a,employees e
where a.employee_id=e.employee_id
order by rn asc;
--(52)
select e1.employee_id ida,concat(initcap(e1.first_name),initcap(e1.last_name))total_name,e1.manager_id,concat(ini tcap(e2.first_name),initcap(e2.last_name))total_name,e2.manager_id,concat(initcap(e3.first_ name),initcap(e3.last_name))total_name
from employees e1,employees e2,employees e3
where (e1.manager_id=e2.employee_id and e2.manager_id=e3.employee_id)
union all
select e4.employee_id ida,concat(initcap(e4.first_name),initcap(e4.last_name))total_name,e4.manager_id,concat(ini tcap(e5.first_name),initcap(e5.last_name))total_name,null as manager_id_1,null as total_name_2
from employees e4,employees e5
where e4.manager_id=e5.employee_id and e5.manager_id is null
order by ida asc;
--(54)
select employee_id, level, lpad('|-', level * 5 - 1, ' ') || concat(initcap(first_name),initcap(last_name)) as employee_total_name
from employees
start with manager_id is null
connect by prior employee_id = manager_id;
注:本文章仅用于参考学习,如有错误,请大家指正。