You are on page 1of 23

SQL-3

Tarek El-Shishtawy
Professor Ass. Of Computer Engineering

Aggregate Functions

COUNT : to count the number of rows of the relation MAX : to find the maximum value of the attribute (column) MIN : to find the minimum value of the attribute SUM : to find the sum of values of the attribute provided the data type of the attribute is number AVG : to find the average of n values, ignoring null values STDDEV: standard deviation of n values ignoring null values VARIANCE : variance of n values ignoring null values
2

COUNT

SELECT COUNT (*) FROM table name;

Returns No of rows of a relation

SELECT COUNT (attribute name) FROM table name;

Returns No of rows of a relation

SELECT COUNT (DISTINCT attribute name) FROM table name;

returns the number of rows of the relation, by eliminating duplicate values.


3

MAX Command
SELECT MAX (attribute name) FROM table name;
to get the maximum price of the product Select max(Price) From consumer_product; To get the product name with maximum price
Table Consumer product Name TV refrigerator washing machine mixer Price 15,000 10,000 17,000 3,500

Select Name from Consumer_product Where price in (select max(price) from consumer_product);

Min Command
SELECT MIN (attribute name) FROM table name;
to get the Minimum price of the product Select min(Price) From consumer_product; To get the product name with minimum price
Table Consumer product Name TV refrigerator washing machine mixer Price 15,000 10,000 17,000 3,500

Select Name from Consumer_product Where price in (select min(price) from consumer_product);

AVG Command
The AVG command is used to get the average value of an attribute. The syntax of AVG command is: SELECT AVG (attribute name) FROM table name;

GROUP BY Function

The GROUP BY clause is used to group rows to compute group-statistics. It is to be noted that when the GROUP BY clause is present, then

the SELECT clause may include only the columns that appear in the GROUP BY clause and aggregate functions.

The general Form


SELECT attribute name, aggregate function FROM table name GROUP BY attribute name;
7

Example Group by

Having Command
The HAVING command is used to select the group. In other words HAVING restricts the groups according to a specified condition. The syntax of HAVING command is:

SELECT attribute name, aggregate function FROM table name GROUP BY attribute name HAVING condition;
9

Example

find the details of the department in which more than 90 students got placement

10

Join Operation
Join operation is used to retrieve data from more than one table. Cartesian Product

If

we have two tables A and B, then Cartesian product combines all rows in the table A with all rows in the table B. If n1 is the number of rows in the table A and n2 is the number of rows in the table B. Then the Cartesian product between A and B will have n1 n2 rows.
11

Example

The relation doctor has the attribute ID, name and department. The relation nurse has three attributes NID, name and department.

12

Joints

Cartesian Product
Select

* from Doctor, Nurse; Gives all fields and all rows (12 Rows)

13

Equijoin

The join condition is based on equality between values in the common columns. Called also:

simple joins or inner joins

14

Outer Joint
In inner join, we select rows common to the participating tables to a join. What about the cases where we are interested in selecting elements in a table regardless of whether they are present in the second table? We will now need to use the SQL OUTER JOIN command

15

Outer Joint
The syntax for performing an outer join in SQL is database-dependent. For example, in Oracle, we will place an "(+)" in the WHERE clause on the other side of the table for which we want to include all the rows

16

Example

Tab;e Store_Information store_name Sales Los Angeles $1500 San Diego $250 Los Angeles $300 Boston $700
Table Geography

Date Jan-05-1999 Jan-07-1999 Jan-08-1999 Jan-08-1999

region_name East East West West

store_name

Boston New York Los Angeles San Diego


17

Example

SELECT A1.store_name, SUM(A2.Sales) SALES FROM Geography A1, Store_Information A2 WHERE A1.store_name = A2.store_name (+) GROUP BY A1.store_name

store_name Boston New York Los Angeles San Diego

SALES $700 $1800 $250


18

Set Operations

UNION, INTERSECTION, and the MINUS (Difference) operations are considered as SET operations.

IBM_DESKTOP

DELL_ DESKTOP

19

UNION command

The union of two relations IBM DESKTOP, DELL DESKTOP is given UNION command eliminates duplicate values. In order to get the duplicate values, we can use UNION ALL command

20

INTERSECTION Operation

The intersection operation returns the tuples that are common to the two relations.

21

MINUS Operation
If R and S are two union compatible relations then RS returns the tuples that are present in R but not in S. SR returns the tuples that are present in S but not in R. It is to be noted that MINUS operation is not commutative That is RS # SR.

22

Minus

23

You might also like