0% found this document useful (0 votes)
109 views5 pages

Assignmnet 2

Uploaded by

Pratik Dhamal
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
109 views5 pages

Assignmnet 2

Uploaded by

Pratik Dhamal
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 5

# ASSIGNMNET 2

# PART A
# NAME: KRUSHNA MAKHAR
# PRN: 202101070060

CREATE DATABASE assignment2;


USE assignment2;
CREATE TABLE trains(
TNO INT PRIMARY KEY,
TNAME VARCHAR(30),
START VARCHAR(30),
END VARCHAR(30)
);

ALTER TABLE trains MODIFY TNAME VARCHAR(50);

SELECT * FROM trains;


INSERT INTO trains (TNO, TNAME, START, END)
VALUES
(11096, 'Ahimsa Express', 'Pune Junction', 'Ahmedabad Junction'),
(12015, "Ajmer Shatabdi", 'New Delhi', 'Ajmer Junction'),
(1651, "Pune Hbj Special", 'Pune Junction', 'Habibganj'),
(13005, "Amritsar Mail", 'Howrah Junction', 'Amritsar Junction'),
(12002, "Bhopal Shatabdi", 'New Delhi', 'Habibjang'),
(12417, "Prayag Raj Express", 'Allahabad Junction', 'New Delhi'),
(14673, "Shaheed Express", 'Jaynagar Amritsar', 'Junction'),
(12314, "Sealdah Rajdhani", 'New Delhi', 'Sealdah'),
(12498, "Shane Punjab Amritsar", 'Junction New', 'Delhi'),
(12451, "Shram Shakti Express", 'Kanpur Central', 'New Delhi'),
(12030, "Swarn Shatabdi Amritsar", 'Junction', 'New Delhi');

CREATE TABLE passengers(


PNR VARCHAR(10),
TNO INT,
PNAME VARCHAR(30),
GENDER VARCHAR(10),
AGE INT,
TRAVELDATE DATE);

INSERT INTO passengers (PNR, TNO, PNAME, GENDER, AGE, TRAVELDATE)


VALUES
('P001', 13005, 'R N Agrawal', 'Male', 45, '2018-12-25'),
('P002', 12015, 'P Tiwari', 'Male', 28, '2018-11-10'),
('P003', 12015, 'S Tiwari', 'Female', 22, '2018-11-10'),
('P004', 12030, 'S K Saxena', 'Male', 42, '2018-10-12'),
('P005', 12030, 'S Saksena', 'Female', 35, '2018-10-12'),
('P006', 12030, 'P Saxena', 'Female', 12, '2018-10-12'),
('P007', 13005, 'N S Singh', 'Male', 52, '2018-05-09'),
('P008', 12030, 'J K Sharma', 'Male', 65, '2018-05-09'),
('P009', 12030, 'R Sharma', 'Female', 58, '2018-05-09');

SELECT * FROM passengers;

#To display details of all Trains which start from New Delhi
SELECT * FROM trains
WHERE START='New Delhi';

#To display PNR, Pname, Gender, Age of all passengers whose age is below 50.
SELECT PNR, PNAME, GENDER, AGE
FROM passengers
WHERE AGE<=50;

#To display total number of Male and Female passengers.


SELECT GENDER, COUNT(*) AS total_passengers
FROM passengers
GROUP BY GENDER;

#To display records of all passengers travelling to trains whose TNO is 12015
# by using inner joined
SELECT passengers.PNR, passengers.PNAME, passengers.GENDER, passengers.AGE,
trains.TNAME, trains.START, trains.END
FROM passengers
JOIN trains ON passengers.TNO = trains.TNO
WHERE passengers.TNO = 12015;

# by subquery
SELECT PNR, PNAME, GENDER, AGE
FROM passengers
WHERE TNO = (SELECT TNO FROM trains WHERE TNO = 12015);

#Corrected query
SELECT MAX(TRAVELDATE), MIN(TRAVELDATE)
FROM Passengers
WHERE GENDER = 'Female';

SELECT END, COUNT(*)


FROM trains
GROUP BY END
HAVING COUNT(*) > 1;

SELECT DISTINCT TRAVELDATE


FROM Passengers;

SELECT TNAME, PNAME


FROM Trains AS T, Passengers AS P
WHERE T.TNO = P.TNO AND AGE BETWEEN 50 and 60;

###########
##########
########
# PART 2
##########
########
#########

CREATE TABLE Shoppe (


Id CHAR(3) PRIMARY KEY,
SName VARCHAR(50),
Area VARCHAR(50)
);
INSERT INTO Shoppe (Id, SName, Area) VALUES
('S01', 'ABC Computronics', 'CP'),
('S02', 'All Infortech Media', 'GK II'),
('S03', 'Tech Shopee', 'CP'),
('S04', 'Geeks Techno Soft', 'Nehru Place'),
('S05', 'Hitech Tech Store', 'Nehru Place');

CREATE TABLE Accessories (


No CHAR(3) PRIMARY KEY,
Name VARCHAR(50),
Price DECIMAL(10, 2),
Id CHAR(3),
FOREIGN KEY (Id) REFERENCES Shoppe(Id)
);

INSERT INTO Accessories (No, Name, Price, Id) VALUES


('A01', 'Mother Board', 12000, 'S01'),
('A02', 'Hard Disk', 5000, 'S01'),
('A03', 'Keyboard', 500, 'S02'),
('A04', 'Mouse', 300, 'S01'),
('A05', 'Mother Board', 13000, 'S02'),
('A06', 'Keyboard', 400, 'S03'),
('A07', 'LCD', 6000, 'S04'),
('A08', 'LCD', 5500, 'S05'),
('A09', 'Mouse', 350, 'S05'),
('A10', 'Hard Disk', 4500, 'S03');

#To display Name and Price of all the accessories in descending order of their Price.
SELECT Name, price
FROM Accessories
ORDER BY Price DESC;

#To display Id and Sname of all the Shoppe location in ‘Nehru Place’.
SELECT ID, SName
FROM Shoppe
WHERE Area='Nehru Place';

#To display Name, Minimum and Maximum Price of each name from Accessories table.
SELECT Name, MIN(Price) AS MinPrice, MAX(Price) AS MaxPrice
FROM Accessories
GROUP BY Name;

#To display Name, Price of all Accessories and their respective SName from Table Shoppe and
Accessories where Price is 5000 or more.
SELECT a.Name, a.Price, s.SName
FROM Accessories a
JOIN Shoppe s ON a.Id = s.Id
WHERE a.Price >= 5000;

# To display all details of accessories where name contains the word ‘Board’;
SELECT *
FROM Accessories
WHERE Name LIKE '%Board%';

SELECT DISTINCT NAME


FROM ACCESSORIES
WHERE PRICE >5000;

SELECT Area, COUNT(*) AS NumShops


FROM Shoppe
GROUP BY Area;

SELECT AVG(PRICE), MAX(PRICE)


FROM ACCESSORIES
WHERE PRICE>=10000;

SELECT Name, Price * 0.05 AS Discount


FROM Accessories
WHERE Id IN ('S02', 'S03');

SELECT *
FROM Shoppe AS S
JOIN Accessories AS A ON S.Id = A.Id
WHERE A.Price >= 10000;

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy