DBMS ASSIGNMENT-4
CREATING TABLES AND INSERTING VALUES:
mysql> create database empinfo;
Query OK, 1 row affected (0.04 sec)
mysql> use empinfo;
Database changed
mysql> create table employee( person_name varchar(30) not null primary key, street
varchar(40),city char(20)
-> );
Query OK, 0 rows affected (0.11 sec)
mysql> create table works( person_name varchar(30) not null primary key, company_name
varchar(40), salary int(5)
-> );
Query OK, 0 rows affected, 1 warning (0.04 sec)
mysql> create table company( company_name varchar(40), city char(20)
-> );
Query OK, 0 rows affected (0.08 sec)
mysql> create table manages( person_name varchar(30), manager_name varchar(30)
-> );
Query OK, 0 rows affected (0.04 sec)
mysql>desc employee;
+-------------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------------+-------------+------+-----+---------+-------+
| person_name | varchar(30) | NO | PRI | NULL | |
| street | varchar(40) | YES | | NULL | |
| city | char(20) | YES | | NULL | |
+-------------+-------------+------+-----+---------+-------+
3 rows in set (0.02 sec)
mysql>desc works;
+--------------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------------+-------------+------+-----+---------+-------+
| person_name | varchar(30) | NO | PRI | NULL | |
| company_name | varchar(40) | YES | | NULL | |
| salary | int | YES | | NULL | |
+--------------+-------------+------+-----+---------+-------+
3 rows in set (0.00 sec)
mysql>desc company;
+--------------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------------+-------------+------+-----+---------+-------+
| company_name | varchar(40) | YES | | NULL | |
| city | char(20) | YES | | NULL | |
+--------------+-------------+------+-----+---------+-------+
2 rows in set (0.00 sec)
mysql>desc manages;
+--------------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------------+-------------+------+-----+---------+-------+
| person_name | varchar(30) | YES | | NULL | |
| manager_name | varchar(30) | YES | | NULL | |
+--------------+-------------+------+-----+---------+-------+
2 rows in set (0.00 sec)
QUERY QUESTION 1:
mysql> alter table works drop primary key;
Query OK, 0 rows affected (0.11 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> alter table company add primary key (company_name);
Query OK, 0 rows affected (0.11 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> alter table works add foreign key(company_name) references company(company_name);
Query OK, 0 rows affected (0.09 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> alter table works add foreign key(person_name) references employee(person_name);
Query OK, 0 rows affected (0.11 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql>desc works;
+--------------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------------+-------------+------+-----+---------+-------+
| person_name | varchar(30) | NO | MUL | NULL | |
| company_name | varchar(40) | YES | MUL | NULL | |
| salary | int | YES | | NULL | |
+--------------+-------------+------+-----+---------+-------+
3 rows in set (0.00 sec)
mysql> alter table manages add foreign key(person_name) referEnces employee(person_name);
Query OK, 0 rows affected (0.08 sec)
Records: 0 Duplicates: 0 Warnings: 0
QUERY QUESTION 2:
mysql> alter table employee add email varchar(20);
Query OK, 0 rows affected (0.03 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> insert into employee values(
-> 'john','a-101','delhi');
mysql> insert into employee values(
-> 'john','a-101','delhi','johnchad@[Link]');
Query OK, 1 row affected (0.02 sec)
mysql> insert into employee values(
-> 'johnny','b-202','mumbai','johnnydept@[Link]');
Query OK, 1 row affected (0.02 sec)
mysql> insert into employee values(
-> 'janardan','c-303','goa','janawar@[Link]');
Query OK, 1 row affected (0.01 sec)
mysql> insert into employee values(
-> 'tara','d-404','bombay','betatara@[Link]');
Query OK, 1 row affected (0.02 sec)
mysql> insert into employee values(
-> 'rumpam','e-505','delhi','sigmarum@[Link]');
Query OK, 1 row affected (0.02 sec)
mysql> insert into company values('ncbbank','delhi');
Query OK, 1 row affected (0.03 sec)
mysql> insert into company values('sambabank','mumbai');
Query OK, 1 row affected (0.03 sec)
mysql> insert into company values('rakshabank','goa');
Query OK, 1 row affected (0.01 sec)
mysql> insert into company values('kotabank','bombay');
Query OK, 1 row affected (0.02 sec)
mysql> insert into company values('hiteshibank','delhi');
Query OK, 1 row affected (0.02 sec)
mysql> insert into works values('john','ncbbank','30000');
Query OK, 1 row affected (0.02 sec)
mysql> insert into works values('johnny','sambabank','40000');
Query OK, 1 row affected (0.02 sec)
mysql> insert into works values('janardan','rakshabank','28000');
Query OK, 1 row affected (0.02 sec)
mysql> insert into works values('tara','kotabank','43000');
Query OK, 1 row affected (0.02 sec)
mysql> insert into works values('rumpam','hiteshibank','35000');
Query OK, 1 row affected (0.02 sec)
mysql> insert into manages values('john','jin')
-> ;
Query OK, 1 row affected (0.02 sec)
mysql> insert into manages values('johnny','june')
-> ;
Query OK, 1 row affected (0.02 sec)
mysql> insert into manages values('johnny','jay')
-> ;
Query OK, 1 row affected (0.03 sec)
mysql> insert into manages values('janardan','jay')
-> ;
Query OK, 1 row affected (0.01 sec)
mysql> insert into manages values('tara','jack')
-> ;
Query OK, 1 row affected (0.02 sec)
mysql> insert into manages values('rumpam','jake')
-> ;
Query OK, 1 row affected (0.02 sec)
mysql> select * from manages;
+-------------+--------------+
| person_name | manager_name |
+-------------+--------------+
| john | jin |
| johnny | june |
| janardan | jay |
| tara | jack |
| rumpam | jake |
+-------------+--------------+
5 rows in set (0.00 sec)
mysql> select * from company;
+--------------+--------+
| company_name | city |
+--------------+--------+
| hiteshibank | delhi |
| kotabank | bombay |
| ncbbank | delhi |
| rakshabank | goa |
| sambabank | mumbai |
+--------------+--------+
5 rows in set (0.00 sec)
mysql> select * from works;
+-------------+--------------+--------+
| person_name | company_name | salary |
+-------------+--------------+--------+
| john | ncbbank | 30000 |
| johnny | sambabank | 40000 |
| janardan | rakshabank | 28000 |
| tara | kotabank | 43000 |
| rumpam | hiteshibank | 35000 |
+-------------+--------------+--------+
5 rows in set (0.01 sec)
QUERY QUESTION 3:
mysql> select manager_name from manages where company_name in('sambabank', 'ncbbank');
+-------------+
| manager_name |
+-------------+
| jin |
| june |
+-------------+
2 rows in set (0.01 sec)
mysql> select * from employee;
+-------------+--------+--------+----------------------+
| person_name | street | city | email |
+-------------+--------+--------+----------------------+
| janardan | c-303 | goa | janawar@[Link] |
| john | a-101 | delhi | johnchad@[Link] |
| johnny | b-202 | mumbai | johnnydept@[Link] |
| rumpam | e-505 | delhi | sigmarum@[Link] |
| tara | d-404 | bombay | betatara@[Link] |
+-------------+--------+--------+----------------------+
5 rows in set (0.00 sec)
QUERY QUESTION 4:
mysql> select employee.person_name from employee, company,works where
employee.person_name =works.person_name and
company.company_name=works.company_name and [Link]=[Link];
+-------------+
| person_name |
+-------------+
| janardan |
| john |
| johnny |
| rumpam |
| tara |
+-------------+
5 rows in set (0.00 sec)
QUERY QUESTION 5:
mysql> select company_name,min(salary),max(salary),avg(salary) from works group by
company_name;
+--------------+-------------+-------------+-------------+
| company_name | min(salary) | max(salary) | avg(salary) |
+--------------+-------------+-------------+-------------+
| hiteshibank | 35000 | 35000 | 35000.0000 |
| kotabank | 43000 | 43000 | 43000.0000 |
| ncbbank | 30000 | 30000 | 30000.0000 |
| rakshabank | 28000 | 28000 | 28000.0000 |
| sambabank | 40000 | 40000 | 40000.0000 |
+--------------+-------------+-------------+-------------+
5 rows in set (0.00 sec)
QUERY QUESTION 6:
mysql> select company_name,count(company_name),sum(salary) from works group by
company_name;
+--------------+---------------------+-------------+
| company_name | count(company_name) | sum(salary) |
+--------------+---------------------+-------------+
| hiteshibank | 1| 35000 |
| kotabank | 1| 43000 |
| ncbbank | 1| 30000 |
| rakshabank | 1| 28000 |
| sambabank | 1| 40000 |
+--------------+---------------------+-------------+
5 rows in set (0.00 sec)
QUERY QUESTION 7:
mysql> select company_name from works where salary=(select max(salary) from works);
+--------------+
| company_name |
+--------------+
| kotabank |
+--------------+
1 row in set (0.01 sec)
SUBMITTED BY- PRABHU (21166)