0% found this document useful (0 votes)
48 views

SQL Views and SQL Subqueries Lab

SQL views allow you to present data from one or more tables as if it were stored in a single virtual table. Views can include functions, filters, and joins. Views are updated automatically when the underlying data changes. Subqueries return data that is then used by the main query. They are nested SQL statements that provide values to the outer query. Subqueries can return individual values or sets of records and must be enclosed in parentheses. Views and subqueries allow complex data retrieval from multiple tables with a simple SELECT statement.

Uploaded by

Taaji Bhatti
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
48 views

SQL Views and SQL Subqueries Lab

SQL views allow you to present data from one or more tables as if it were stored in a single virtual table. Views can include functions, filters, and joins. Views are updated automatically when the underlying data changes. Subqueries return data that is then used by the main query. They are nested SQL statements that provide values to the outer query. Subqueries can return individual values or sets of records and must be enclosed in parentheses. Views and subqueries allow complex data retrieval from multiple tables with a simple SELECT statement.

Uploaded by

Taaji Bhatti
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 5

Lab #13

Sql Views and Sql Subqueries


SQL Views
SQL CREATE VIEW Statement
In SQL, a view is a virtual table based on the result-set of an SQL statement.
A view contains rows and columns, just like a real table. The fields in a view are
fields from one or more real tables in the database.
You can add SQL functions, WHERE, and JOIN statements to a view and present
the data as if the data were coming from one single table.

CREATE VIEW Syntax

CREATE VIEW view_name AS
SELECT column1, column2, ...
FROM table_name
WHERE condition;
Note: A view always shows up-to-date data! The database engine recreates the
data, using the view's SQL statement, every time a user queries a view.

SQL CREATE VIEW Examples


If you have the Northwind database you can see that it has several views
installed by default.
The view "Salesmans_View" lists all active products (Salesman’s that have
commission 0.12) from the "Salesman’s" table. The view is created with the
following SQL:
CREATE VIEW [Salesmans_View] AS
SELECT salesman_id, Name
FROM Salesman’s
WHERE commission = 0.12;
Then, we can query the view as follows:
SELECT * FROM [Salesmans_View];
Another view in the Northwind sample database selects every product in the
"Products" table with a unit price higher than the average unit price:
CREATE VIEW [Products Above Average Price] AS
SELECT ProductName, UnitPrice
FROM Products
WHERE UnitPrice > (SELECT AVG (UnitPrice) FROM Products);
We can query the view above as follows:
SELECT * FROM [Products Above Average Price];
Another view in the Northwind database calculates the total sale for each
category in 1997. Note that this view selects its data from another view called
"Product Sales for 1997":
CREATE VIEW [Category Sales For 1997] AS
SELECT DISTINCT CategoryName, Sum (ProductSales) AS CategorySales
FROM [Product Sales for 1997]
GROUP BY CategoryName;
We can query the view above as follows:
SELECT * FROM [Category Sales For 1997];
We can also add a condition to the query. Let's see the total sale only for the
category "Beverages":
SELECT * FROM [Category Sales For 1997]
WHERE CategoryName = 'Beverages';

SQL Updating a View


You can update a view by using the following syntax:
SQL CREATE OR REPLACE VIEW Syntax

CREATE OR REPLACE VIEW view_name AS
SELECT column1, column2,…
FROM table_name
WHERE condition;

Example
Now we want to add the "Category" column to the "Current Product List" view.
We will update the view with the following SQL:
CREATE OR REPLACE VIEW [Current Product List] AS
SELECT ProductID, ProductName, Category
FROM Products
WHERE Discontinued = No;

SQL Dropping a View


You can delete a view with the DROP VIEW command.
SQL DROP VIEW Syntax
DROP VIEW view_name;

SQL Subqueries
 A subquery is a SQL statement that has another SQL query
embedded in the Where or the having clause
 A subquery is a SQL query within a query.
 Subqueries are nested queries that provide data to the enclosing
query.
 Subqueries can return individual values or a list of records
 Subqueries must be enclosed with parenthesis

Syntax
The syntax for a subquery when the embedded SQL statement is part of
the WHERE condition is as follows:

SELECT "column_name1"
FROM "table_name1"
WHERE "column_name2" [Comparison Operator]
(SELECT "column_name3"
FROM "table_name2"
WHERE "condition");

[Comparison Operator] could be equality operators such as =, >, <, >=, <=. It
can also be a text operator such as "LIKE". The portion in red is considered
as the "inner query," while the portion in Green is considered as the "outer
query."
Examples
We use the following tables for our examples.
Student
Example 1: Simple subquery
To use a subquery to find the data of youngest student

Select * from student where age in(select min(age) from


student)

Result:

This type of subquery is called a simple subquery.


Example 2:
Consider 2 tables with student table

Course Enrollment

Now we want to show those students who have enrolled course with 3 credit
hours

Select * from student where sid in(select sid from enrollment


where cid in(select cid from course where cr_hours=3))

The Result will be like this:

You might also like