Fundamentals of Database Systems – ASSIGNMENT 2
PGDBA, First Year, 2020–2022
Deadline: January 15, 2021
Total: 5 marks
SUBMISSION INSTRUCTIONS
1. Submit all the solutions in a single file.
2. Naming convention for your submission file (assuming 20BM6JPxx is your roll
number): 20BM6JPxx-assign2 (.rtf, .docx, .doc, .pdf, .tex, etc.).
3. To submit a solution file (say 20BM6JPxx-assign1.pdf), ensure that it is not pass-
word protected and mail to <[email protected]> with the subject line as
follows: PGDBA 2020-22 20BM6JPxx Assignment 2.
NOTE: All the solutions must be self-sufficient and to the point.
Q1. Consider the following schema representing the year of establishment of different branches
of multiple banks:
• BRANCH = id : integer, if sc : string, yoe : string
Given the IFSC codes are going to change soon, suppose we need to retrieve bank-specific
details for the revision of IFSC codes. Let the first three characters of IFSC code symbolize
the bank name (in abbreviation). You need to write an SQL query that can find out the first
three characters of each IFSC code.
Q2. Consider the following schema representing the details about the winners of Rio 2016 Olympic:
• OLYMPIAN = game : string, name : string, dob : date
Write an SQL query that can find out the numbers of Olympians whose DOB is between
01/01/1951 to 05/08/1976 and are grouped according to game.
Q3. Given the relational schema R = (H, I, J, D, P, Q, A) with atomic attributes, for which the
set of functional dependencies {H → HIJDP QA, SD → P, JP → H, J → I} hold, answer
the following questions:
(i) Find the candidate keys for R.
(ii) Identify the highest normal form that R satisfies.
(iii) If R is not in BCNF, decompose it until it becomes. During decomposition, re-compute
the keys and normal forms the emerging relations satisfy.