0% found this document useful (0 votes)
26 views9 pages

Tech Academy Oracle SQL Assessment - 1

The document contains SQL statements to create tables for students, courses, and enrollments with sample data. It then provides SQL queries to retrieve data from the tables including average student age, course enrollments by name, student grades for a specific course, courses taken by male students, student names and emails for a course, and course enrollments grouped by name and instructor.

Uploaded by

Gulam Rabbani
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)
26 views9 pages

Tech Academy Oracle SQL Assessment - 1

The document contains SQL statements to create tables for students, courses, and enrollments with sample data. It then provides SQL queries to retrieve data from the tables including average student age, course enrollments by name, student grades for a specific course, courses taken by male students, student names and emails for a course, and course enrollments grouped by name and instructor.

Uploaded by

Gulam Rabbani
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/ 9

Assessment - 1

3.2 Create Tables


Student –
CREATE TABLE Students (
student_id INT PRIMARY KEY,
name VARCHAR(50),
email VARCHAR(50),
age INT,
gender VARCHAR(10),
department VARCHAR(50),
CONSTRAINT chk_gender CHECK (gender IN ('Male', 'Female', 'Other'))
);
Course –
CREATE TABLE Courses (
course_id INT PRIMARY KEY,
name VARCHAR(50),
instructor VARCHAR(50),
department VARCHAR(50)
);

Enrollments –
CREATE TABLE Enrollments (
enrollment_id INT PRIMARY KEY,
student_id INT,
course_id INT,
grade CHAR(1),
FOREIGN KEY (student_id) REFERENCES Students(student_id),
FOREIGN KEY (course_id) REFERENCES Courses(course_id),
CONSTRAINT chk_grade CHECK (grade IN ('A', 'B', 'C', 'D', 'F'))
);
3.3 Data Entries
Student –
INSERT INTO Students (student_id, name, email, age, gender, department) VALUES
(730, 'Jack', '[email protected]', 20, 'Male', 'Computer Science');
INSERT INTO Students (student_id, name, email, age, gender, department) VALUES
(740, 'Rhonda', '[email protected]', 22, 'Female', 'Accounting');
INSERT INTO Students (student_id, name, email, age, gender, department) VALUES
(750, 'Robert', '[email protected]', 21, 'Other', 'Biology');
INSERT INTO Students (student_id, name, email, age, gender, department) VALUES
(760, 'Jeanne', '[email protected]', 19, 'Female', 'Physics');
INSERT INTO Students (student_id, name, email, age, gender, department) VALUES
(770, 'Mills', '[email protected]', 23, 'Male', 'Chemistry');
Courses –
INSERT INTO Courses (course_id, name, instructor, department) VALUES
(10, 'Database Management', 'Dr. Mark Smith', 'Computer Science');
INSERT INTO Courses (course_id, name, instructor, department) VALUES
(20, 'Introduction to Accounting for Civil Engineers', 'Prof. Dave Gold', 'Accounting');
INSERT INTO Courses (course_id, name, instructor, department) VALUES
(30, 'Physics for Engineers', 'Dr. Linda Brown', 'Physics');
INSERT INTO Courses (course_id, name, instructor, department) VALUES
(40, 'Biology Fundamentals', 'Dr. Chang Lee', 'Biology');
INSERT INTO Courses (course_id, name, instructor, department) VALUES
(50, 'Organic Chemistry', 'Prof. Anita Taylor', 'Chemistry');

Enrollments –
INSERT INTO Enrollments (enrollment_id, student_id, course_id, grade) VALUES
(1, 730, 10, 'A');
INSERT INTO Enrollments (enrollment_id, student_id, course_id, grade) VALUES
(2, 740, 20, 'B');
INSERT INTO Enrollments (enrollment_id, student_id, course_id, grade) VALUES
(3, 750, 30, 'C');
INSERT INTO Enrollments (enrollment_id, student_id, course_id, grade) VALUES
(4, 760, 40, 'D');
INSERT INTO Enrollments (enrollment_id, student_id, course_id, grade) VALUES
(5, 770, 50, 'F');
3.4
1. SELECT name AS course_name, instructor FROM Courses;
2. SELECT AVG(age) AS Average_age FROM Students;

3. SELECT Courses.name AS course_name, COUNT(Enrollments.student_id) AS


num_students_enrolled
FROM Courses
LEFT JOIN Enrollments
ON Courses.course_id = Enrollments.course_id
GROUP BY Courses.name;

4. SELECT Students.name AS student_name, Enrollments.grade


FROM Students
INNER JOIN Enrollments
ON Students.student_id = Enrollments.student_id
INNER JOIN Courses
ON Enrollments.course_id = Courses.course_id
WHERE Courses.name = 'Database Management';

5. SELECT DISTINCT Courses.name AS course_name


FROM Courses
INNER JOIN Enrollments ON Courses.course_id = Enrollments.course_id
INNER JOIN Students ON Enrollments.student_id = Students.student_id
WHERE Students.gender = 'Male';

6. SELECT Students.name AS student_name, Students.email


FROM Students
INNER JOIN Enrollments ON Students.student_id = Enrollments.student_id
INNER JOIN Courses ON Enrollments.course_id = Courses.course_id
WHERE Courses.name = 'Database Management';

7. SELECT
Courses.name AS course_name,
Courses.instructor AS instructor,
COUNT(Enrollments.student_id) AS num_students_enrolled
FROM Courses
INNER JOIN Enrollments
ON Courses.course_id = Enrollments.course_id
GROUP BY Courses.name, Courses.instructor;
8. UPDATE Students
SET email = '[email protected]'
WHERE student_id = 770;

SELECT name, email FROM Students;

You might also like