0% found this document useful (0 votes)
11 views32 pages

Practical No - 1

The document discusses various string and numeric functions in SQL. It provides examples of using functions like CONCAT(), LOWER(), UPPER(), LENGTH(), MOD(), POW(), SQRT(), ROUND(), and TRUNCATE() on individual values and table columns. Various functions are demonstrated with examples of syntax, sample code/commands, and output results. The aim is to study and apply these functions to manipulate string values and perform mathematical operations on numeric data in SQL.

Uploaded by

nihalparteti26
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)
11 views32 pages

Practical No - 1

The document discusses various string and numeric functions in SQL. It provides examples of using functions like CONCAT(), LOWER(), UPPER(), LENGTH(), MOD(), POW(), SQRT(), ROUND(), and TRUNCATE() on individual values and table columns. Various functions are demonstrated with examples of syntax, sample code/commands, and output results. The aim is to study and apply these functions to manipulate string values and perform mathematical operations on numeric data in SQL.

Uploaded by

nihalparteti26
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/ 32

PRACTICAL NO :-1

AIM:- STUDY OF STRING FUNCTIONS IN SQL.


OBJECTIVE:-APPLYING STRING FUNCTION TO INDIVIDUAL VALUES & TABLE
DATA.
THEORY:- WE NEED TO PERFORM SOME OPERATION THESE OPERATION CAN BE
USING STRING FUNCTION THESE ARE DIFFERENT STRING FUNCTIONS
SELECT * FROM SCHOOL1;
+-------+-------+-------+---------+------------+
| SR_NO | NAME | CLASS | SECTION | DOB |
+-------+-------+-------+---------+------------+
| 1 | NIHAL | 12 | A | 2006-04-26 |
| 2 | HARI | 12 | A | 2005-12-01 |
| 3 | SHIV | 12 | A | 2006-05-20 |
| 4 | RAM | 12 | A | 2006-08-05 |
| 5 | OM | 12 | A | 2007-10-11 |
+-------+-------+-------+---------+------------+
5 rows in set (0.02 sec)

SYNTAX_1:- CONCAT(str1,str2,...)

RETURN TYPE:- STRING

CODE /COMMAND:-SELECT CONCAT(NAME,CLASS)AS 'NAMECLASS' FROM SCHOOL1;

RESULT:-
+-----------+
| NAMECLASS |
+-----------+
| NIHAL12 |
| HARI12 |
| SHIV12 |
| RAM12 |
| OM12 |
+-----------+
5 rows in set (0.00 sec)

OBSERVATION:- HERE YOU CAN SEE THAT

SYNTAX_2:-LOWER(str)
RETURN TYPE:-STRING

CODE/COMMAND:- SELECT LOWER('OM') ;

RESULT:-

+-------------+
| LOWER('OM') |
+-------------+
| om |
+-------------+
1 row in set (0.00 sec)
OR
SELECT LOWER(NAME)AS 'LOWER CASE' FROM SCHOOL1;
+------------+
| LOWER CASE |
+------------+
| nihal |
| hari |
| shiv |
| ravi |
| om |
+------------+
5 rows in set (0.00 sec)

OBSERVATION:-

SYNTAX_3:-UPPER(str)

RETURN TYPE:-STRING

CODE/COMMAND:- SELECT UPPER(NAME)AS 'UPPER CASE' FROM SCHOOL1;

RESULT:-
+------------+
| LOWER CASE |
+------------+
| NIHAL |
| HARI |
| SHIV |
| RAVI |
| OM |
+------------+
5 rows in set (0.01 sec)

OBSERVATION:-

SYNTAX_4:-INSTR(str1,str2,..)

RETURN TYPE:-NUMBER

CODE/COMMAND:- SELECT INSTR('HARIGOPAL','GOPAL') AS 'INSTRING';

RESULT:-
+----------+
| INSTRING |
+----------+
| 5 |
+----------+
1 row in set (0.00 sec)

OBSERVATION:-

SYNTAX_5:-LENGTH(str)

RETURN TYPE:- NUMBER

CODE/COMMAND:- SELECT LENGTH('NIHAL') ;


RESULT:-
+-----------------+
| LENGTH('NIHAL') |
+-----------------+
| 5 |
+-----------------+
1 row in set (0.00 sec)

SYNTAX_6:-LEFT(STR)

RETURN TYPE:-STRING

CODE/COMMAND:- SELECT LENGTH('NIHAL') ;

RESULT:-
+-----------------+
| LENGTH('NIHAL') |
+-----------------+
| 5 |
+-----------------+
1 row in set (0.00 sec)

OBSERVATION:-

SYNTAX_7:-RIGHT(STR)

RETURN TYPE:-STRING

CODE/COMMAND:- SELECT RIGHT('HARIOM',2);

RESULT:-
+-------------------+
| RIGHT('HARIOM',2) |
+-------------------+
| OM |
+-------------------+
1 row in set (0.00 sec)
OBSERVATION:-

SYNTAX_8:-SUBSTR()

RETURN TYPE:-STRING

CODE/COMMAND:-SELECT SUBSTR(('MAHADEV'),5,7);

RESULT:-
+-------------------------+
| SUBSTR(('MAHADEV'),5,7) |
+-------------------------+
| DEV |
+-------------------------+
1 row in set (0.00 sec)

OBSERVATION:-

SYNTAX_9:-LTRIM(STR)

RETURN TYPE:-STRING

CODE/COMMAND:- SELECT LTRIM(' MAHADEV') AS 'LEADING';

RESULT:-

+---------+
| LEADING |
+---------+
| MAHADEV |
+---------+
1 row in set (0.00 sec)

OBSERVATION:-

SYNTAX_10:-RTRIM(STR)
RETURN TYPE:-STRING

CODE/COMMAND:- SELECT RTRIM('HARIOM ') AS 'TRAILING';

RESULT:-
+---------+
|TRAILING |
+---------+
| HARIOM |
+---------+
1 row in set (0.01 sec)

OBSERVATION:-

SYNTAX_11:-TRIM(<LEADING,TRAILING>[REMSTR] FROM<STR>);

RETURN TYPE:- STRING

CODE/COMMAND:-
SELECT TRIM(LEADING'Y' FROM 'YYYOM');

RESULT:-
+-------------------------------+
| TRIM(LEADING'Y' FROM 'YYYOM') |
+-------------------------------+
| OM |
+-------------------------------+
1 row in set (0.00 sec)

OR

SELECT TRIM(LEADING'Y' FROM 'YYYOMYY');


+---------------------------------+
| TRIM(LEADING'Y' FROM 'YYYOMYY') |
+---------------------------------+
| OMYY |
+---------------------------------+
1 row in set (0.00 sec)

OR

SELECT TRIM(TRAILING 'H' FROM 'NIHAL');


+---------------------------------+
| TRIM(TRAILING 'H' FROM 'NIHAL') |
+---------------------------------+
| NIHAL |
+---------------------------------+
1 row in set (0.00 sec)

OBSERVATION:-

PRACTICAL NO :-2

AIM:-STUDY OF NUMERIC FUNCTION IN SQL

OBJECTIVE:-APPLYING NUMERIC FUNCTION TO INDIVIDUAL VALUE AND TABLE


DATA

THEORY:- WE HAVE TO PERFORM SOME MATHEMATICAL OPERATIONS THESE


OPERATION CAN BE DONE EASILY BY USING NUMERIC FUNCTIONTHERE ARE
DIFFERENT NUMERIC FUNCTION
+-------+-------+-------+---------+------------+
| SR_NO | NAME | CLASS | SECTION | DOB |
+-------+-------+-------+---------+------------+
| 1 | NIHAL | 12 | A | 2006-04-26 |
| 2 | HARI | 12 | A | 2005-12-01 |
| 3 | SHIV | 12 | A | 2006-05-20 |
| 4 | RAM | 12 | A | 2006-08-05 |
| 5 | OM | 12 | A | 2007-10-11 |
+-------+-------+-------+---------+------------+
SYNTAX_1:-MOD()

RETURN TYPE:-INT

CODE/COMMAND:- SELECT MOD(25,2);

RESULT:-

+-----------+
| MOD(25,2) |
+-----------+
| 1 |
+-----------+
1 row in set (0.00 sec)

OR
SELECT MOD(25,5);
+-----------+
| MOD(25,5) |
+-----------+
| 0 |
+-----------+
1 row in set (0.00 sec)

OBSERVATION:-

SYNTAX_2:-POW(M,N)

RETURN TYPE:-STRING

CODE/COMMAND:-
SELECT POW(3,5);

RESULT:-
+----------+
| POW(3,5) |
+----------+
| 243 |
+----------+
1 row in set (0.00 sec)

OR
SELECT POWER(15,2);
+-------------+
| POWER(15,2) |
+-------------+
| 225 |
+-------------+
1 row in set (0.00 sec)

WITH TABLE:-
mysql> SELECT POW(SR_NO,3) FROM SCHOOL1;
+--------------+
| POW(SR_NO,3) |
+--------------+
| 1 |
| 8 |
| 27 |
| 64 |
| 125 |
+--------------+
5 rows in set (0.00 sec)

mysql> SELECT SR_NO,POW(SR_NO,3) AS 'SR_NO RISE 2' FROM SCHOOL1;


+-------+--------------+
| SR_NO | SR_NO RISE 2 |
+-------+--------------+
| 1 | 1 |
| 2 | 8 |
| 3 | 27 |
| 4 | 64 |
| 5 | 125 |
+-------+--------------+
5 rows in set (0.00 sec)

mysql> SELECT SR_NO,POW(SR_NO,3) AS 'SR_NO RISE 3' FROM SCHOOL1;


+-------+--------------+
| SR_NO | SR_NO RISE 3 |
+-------+--------------+
| 1 | 1 |
| 2 | 8 |
| 3 | 27 |
| 4 | 64 |
| 5 | 125 |
+-------+--------------+
5 rows in set (0.00 sec)

SYNTAX_3:-SIGN()

RETURN TYPE:-INT

CODE/COMMAND:- SELECT SIGN(-5);

RESULT:-
+----------+
| SIGN(-5) |
+----------+
| -1 |
+----------+
1 row in set (0.00 sec)

OR

SELECT SIGN(12);
+----------+
| SIGN(12) |
+----------+
| 1 |
+----------+
1 row in set (0.00 sec)
SELECT SIGN(0);
+---------+
| SIGN(0) |
+---------+
| 0 |
+---------+
1 row in set (0.00 sec)

mysql> SELECT SIGN(NULL);


+------------+
| SIGN(NULL) |
+------------+
| NULL |
+------------+
1 row in set (0.00 sec)

SYNTAX_4:-SQRT()

RETURN TYPE:-INT

CODE/COMMAND:-
SELECT SQRT(81);

RESULT:-

+----------+
| SQRT(81) |
+----------+
| 9 |
+----------+

1 row in set (0.00 sec)

OR
SELECT SQRT(SR_NO) AS 'SR_NO SQRT' FROM SCHOOL1;
+--------------------+
| SR_NO SQRT |
+--------------------+
| 1 |
| 1.4142135623730951 |
| 1.7320508075688772 |
| 2 |
| 2.23606797749979 |
+--------------------+
5 rows in set (0.01 sec)

SYNTAX_5:-ROUND()

RETURN TYPE:-INT

CODE/COMMAND:- SELECT ROUND(15.532,0);

RESULT:-

+-----------------+
| ROUND(15.532,0) |
+-----------------+
| 16 |
+-----------------+
1 row in set (0.00 sec)

OR
mysql> SELECT ROUND(15.532,1);
+-----------------+
| ROUND(15.532,1) |
+-----------------+
| 15.5 |
+-----------------+
1 row in set (0.00 sec)

mysql> SELECT ROUND(15.532,-1);


+------------------+
| ROUND(15.532,-1) |
+------------------+
| 20 |
+------------------+
1 row in set (0.00 sec)

mysql> SELECT ROUND(15.532,2);


+-----------------+
| ROUND(15.532,2) |
+-----------------+
| 15.53 |
+-----------------+
1 row in set (0.00 sec)

mysql> SELECT ROUND(15.551,2);


+-----------------+
| ROUND(15.551,2) |
+-----------------+
| 15.55 |
+-----------------+
1 row in set (0.00 sec)

mysql> SELECT ROUND(15.555,2);


+-----------------+
| ROUND(15.555,2) |
+-----------------+
| 15.56 |
+-----------------+
1 row in set (0.00 sec)

mysql> SELECT ROUND(14.55,-1);


+-----------------+
| ROUND(14.55,-1) |
+-----------------+
| 10 |
+-----------------+
1 row in set (0.00 sec)

mysql> SELECT ROUND(17.12,-2);


+-----------------+
| ROUND(17.12,-2) |
+-----------------+
| 0 |
+-----------------+
1 row in set (0.00 sec)

mysql> SELECT ROUND(15.499);


+---------------+
| ROUND(15.499) |
+---------------+
| 15 |
+---------------+
1 row in set (0.00 sec)

mysql> SELECT ROUND(99,-2);


+--------------+
| ROUND(99,-2) |
+--------------+
| 100 |
+--------------+
1 row in set (0.00 sec)

mysql> SELECT ROUND(501,-3);


+---------------+
| ROUND(501,-3) |
+---------------+
| 1000 |
+---------------+
1 row in set (0.00 sec)

SYNTAX_6:-TRUNCATE()

RETURN TYPE:-INT

CODE/COMMAND:- SELECT TRUNCATE(15.1515,3);

RESULT:-
+---------------------+
| TRUNCATE(15.1515,3) |
+---------------------+
| 15.151 |
+---------------------+
1 row in set (0.00 sec)

OR
mysql> SELECT TRUNCATE(15.1515,5);
+---------------------+
| TRUNCATE(15.1515,5) |
+---------------------+
| 15.1515 |
+---------------------+
1 row in set (0.00 sec)

mysql> SELECT TRUNCATE(15.1515,1);


+---------------------+
| TRUNCATE(15.1515,1) |
+---------------------+
| 15.1 |
+---------------------+
1 row in set (0.00 sec)

mysql> SELECT TRUNCATE(15.1515,-1);


+----------------------+
| TRUNCATE(15.1515,-1) |
+----------------------+
| 10 |
+----------------------+
1 row in set (0.01 sec)

mysql> SELECT TRUNCATE(15.1515,-2);


+----------------------+
| TRUNCATE(15.1515,-2) |
+----------------------+
| 0 |
+----------------------+
1 row in set (0.00 sec)
mysql> SELECT TRUNCATE(15.1515,0);
+---------------------+
| TRUNCATE(15.1515,0) |
+---------------------+
| 15 |
+---------------------+
1 row in set (0.00 sec)

mysql> SELECT TRUNCATE(115.1515,-1);


+-----------------------+
| TRUNCATE(115.1515,-1) |
+-----------------------+
| 110 |
+-----------------------+
1 row in set (0.00 sec)

mysql> SELECT TRUNCATE(115.1515,-2);


+-----------------------+
| TRUNCATE(115.1515,-2) |
+-----------------------+
| 100 |
+-----------------------+
1 row in set (0.00 sec)

PRACTICAL NO :-3

AIM:-STUDY OF DATE/TIME FUNCTION IN SQL

OBJECTIVE:-APPLYING DATE/TIME FUNCTIONS TO INDIVIDUAL VALUES & TABLE


DATA

THEORY:-

SYNTAX_1:-CURDATE()

RETURN TYPE:-DATE

CODE/COMMAND:- SELECT CURDATE();

RESULT:-

+------------+
| CURDATE() |
+------------+
| 2023-03-22 |
+------------+
1 row in set (0.00 sec)

OBSERVATION:-

SYNTAX_2:-DATE()

RETURN TYPE:-DATE

CODE/COMMAND:- SELECT DATE('2023-03-05 01:05:10');

RESULT:-
+-----------------------------+
| DATE('2023-03-05 01:05:10') |
+-----------------------------+
| 2023-03-05 |
+-----------------------------+
1 row in set (0.01 sec)

SYNTAX_3:-MONTH()

RETURN TYPE:-INTEGER

CODE/COMMAND:- SELECT MONTH ('2023-03-06');

RESULT:-

+----------------------+
| MONTH ('2023-03-06') |
+----------------------+
| 3 |
+----------------------+
1 row in set (0.00 sec)

SYNTAX_4:-DAY()

RETURN TYPE:-INTEGER

CODE/COMMAND:- SELECT DAY ('2023-03-06');


RESULT:-

+--------------------+
| DAY ('2023-03-06') |
+--------------------+
| 6 |
+--------------------+
1 row in set (0.00 sec)

OBSERVATION:-

SYNTAX_5:-YEAR(DATE)

RETURN TYPE:-INTEGER

CODE/COMMAND:- SELECT YEAR ('2023-03-06');

RESULT:-

+---------------------+
| YEAR ('2023-03-06') |
+---------------------+
| 2023 |
+---------------------+
1 row in set (0.00 sec)
SYNTAX_6:-MONTHNAME(DATE)

RETURN TYPE:-STRING

CODE/COMMAND:- SELECT MONTHNAME('2023-03-06');

RESULT:-

+-------------------------+
| MONTHNAME('2023-03-06') |
+-------------------------+
| March |
+-------------------------+
1 row in set (0.01 sec)

SYNTAX_7:-DAYNAME(DATE)

RETURN TYPE:-STRING

CODE/COMMAND:- SELECT DAYNAME('2023-04-26');

RESULT:-

+-----------------------+
| DAYNAME('2023-04-26') |
+-----------------------+
| Wednesday |
+-----------------------+

OBSERVATION:-

SYNTAX_8:-DAYOFMONTH(date)
RETURN TYPE:-INTEGER

CODE/COMMAND:- SELECT DAYOFMONTH('2023-03-05');

RESULT:-

+--------------------------+
| DAYOFMONTH('2023-03-05') |
+--------------------------+
| 5 |
+--------------------------+
1 row in set (0.00 sec)

OBSERVATION:-

SYNTAX_9:-DAYOFWEEK(date)

RETURN TYPE:-INTEGER

CODE/COMMAND:- SELECT DAYOFWEEK('2023-03-05');

RESULT:-

+-------------------------+
| DAYOFWEEK('2023-03-05') |
+-------------------------+
| 1 |
+-------------------------+
1 row in set (0.00 sec)

OBSERVATION:-

SYNTAX_10:-DAYOFYEAR(date)
RETURN TYPE:-INTEGER

CODE/COMMAND:- SELECT DAYOFYEAR('2023-03-05');

RESULT:-

+-------------------------+
| DAYOFYEAR('2023-03-05') |
+-------------------------+
| 64 |
+-------------------------+
1 row in set (0.00 sec)

OBSERVATION:-

SYNTAX_11:- NOW()

RETURN TYPE:-DATETIME

CODE/COMMAND:- SELECT NOW();

RESULT:-

+---------------------+
| NOW() |
+---------------------+
| 2023-03-06 23:04:04 |
+---------------------+
1 row in set (0.00 sec)

OBSERVATION:-

SYNTAX_12:-SYSDATE()
RETURN TYPE:-DATETIME

CODE/COMMAND:- SELECT SYSDATE();

RESULT:-

+---------------------+
| SYSDATE() |
+---------------------+
| 2023-03-06 23:03:29 |
+---------------------+
1 row in set (0.00 sec)

OBSERVATION:-

PRACTICAL NO :-4

AIM:- STUDY OF AGGREGATE FUNCTION IN SQL

OBJECTIVE:- APPLYING AGGREGATE FUNCTIONS IN THE TABLE DATA

THEORY:-THROUGH AGGREGATE FUNCTION WE CAN CALCULATE THE THINGS


FOR SETS OF DATA OF SAME COLUMN IN SQL

mysql> SELECT *FROM CLASS12;


+-------+---------+-------+------+-------+
| SR_NO | SNAME | CLASS | SEC | MARKS |
+-------+---------+-------+------+-------+
| 1 | NIHAL | 8 | A | 80 |
| 2 | PALASH | 9 | B | 85 |
| 3 | GOVIND | 7 | A | 90 |
| 4 | HARSHIT | 9 | A | 80 |
| 5 | HARI | 7 | A | 75 |
| 6 | DEV | 8 | A | 80 |
| 7 | KRISH | 9 | A | 81 |
| 8 | JAY | 8 | B | 79 |
| 9 | OM | 9 | C | 71 |
| 10 | NAYAN | 6 | D | 83 |
+-------+---------+-------+------+-------+
10 rows in set (0.00 sec)

THERE ARE DIFFERENT AGGREGATE FUNCTIONS:

SYNTAX_1:-AVG([DISTINCT | ALL ] n)

RETURN TYPE:- NUMERIC

CODE/COMMAND:- SELECT AVG(MARKS)FROM CLASS12;

RESULT:-

+------------+
| AVG(MARKS) |
+------------+
| 80.4000 |
+------------+
1 row in set (0.01 sec)

OBSERVATION:-

SYNTAX_2:-COUNT(*[DISTINCT | ALL ] expr})

RETURN TYPE:-NUMERIC

CODE/COMMAND:- SELECT COUNT(MARKS)FROM CLASS12;

RESULT:-

+--------------+
| COUNT(MARKS) |
+--------------+
| 10 |
+--------------+
1 row in set (0.00 sec)

OBSERVATION:-

SYNTAX_3:-MAX([DISTINCT | ALL expr)

RETURN TYPE:-NUMERIC

CODE/COMMAND:- SELECT MAX(MARKS) FROM CLASS12;

RESULT:-

+------------+
| MAX(MARKS) |
+------------+
| 90 |
+------------+
1 row in set (0.02 sec)

OBSERVATION:-

SYNTAX_4:-MIN([DISTINCT | ALL] expr)

RETURN TYPE:-NUMERIC

CODE/COMMAND:- SELECT MIN(MARKS)FROM CLASS12;

RESULT:-
+------------+
| MIN(MARKS) |
+------------+
| 71 |
+------------+
1 row in set (0.00 sec)

OBSERVATION:-

SYNTAX_5:-SUM([DISTINCT | ALL ] n)

RETURN TYPE:-NUMERIC

CODE/COMMAND:- SELECT SUM(MARKS)FROM CLASS12;

RESULT:-

+------------+
| SUM(MARKS) |
+------------+
| 804 |
+------------+
1 row in set (0.00 sec)

OBSERVATION:-

PRACTICAL NO :-5

AIM:-STUDY OF ORDER BY CLAUSE IN SQL


OBJECTIVE :-applying order by clause in the table data

THEORY:-through order by clause we can set the data in the ascending or descending
order in sql

mysql> SELECT * FROM CLASS12;


+-------+---------+-------+------+-------+
| SR_NO | SNAME | CLASS | SEC | MARKS |
+-------+---------+-------+------+-------+
| 1 | NIHAL | 8 | A | 80 |
| 2 | PALASH | 9 | B | 85 |
| 3 | GOVIND | 7 | A | 90 |
| 4 | HARSHIT | 9 | A | 80 |
| 5 | HARI | 7 | A | 75 |
| 6 | DEV | 8 | A | 80 |
| 7 | KRISH | 9 | A | 81 |
| 8 | JAY | 8 | B | 79 |
| 9 | OM | 9 | C | 71 |
| 10 | NAYAN | 6 | D | 83 |
+-------+---------+-------+------+-------+
10 rows in set (0.21 sec)

there are different types of examples shown here:-

SYNTAX:-SELECT column-list FROM table_name [WHERE condition]


[ORDER BY column1, column2, .. columnN] [ASC | DESC];

RETURN TYPE:-

CODE/COMMAND:-SELECT * FROM CLASS12 ORDER BY CLASS,SEC DESC;

RESULT:-

+-------+---------+-------+------+-------+
| SR_NO | SNAME | CLASS | SEC | MARKS |
+-------+---------+-------+------+-------+
| 10 | NAYAN | 6 | D | 83 |
| 3 | GOVIND | 7 | A | 90 |
| 5 | HARI | 7 | A | 75 |
| 8 | JAY | 8 | B | 79 |
| 1 | NIHAL | 8 | A | 80 |
| 6 | DEV | 8 | A | 80 |
| 9 | OM | 9 | C | 71 |
| 2 | PALASH | 9 | B | 85 |
| 4 | HARSHIT | 9 | A | 80 |
| 7 | KRISH | 9 | A | 81 |
+-------+---------+-------+------+-------+
10 rows in set (0.01 sec)

OBSERVATION:-

CODE/COMMAND:- SELECT * FROM CLASS12 ORDER BY SEC,CLASS DESC;

RESULT:-

+-------+---------+-------+------+-------+
| SR_NO | SNAME | CLASS | SEC | MARKS |
+-------+---------+-------+------+-------+
| 4 | HARSHIT | 9 | A | 80 |
| 7 | KRISH | 9 | A | 81 |
| 1 | NIHAL | 8 | A | 80 |
| 6 | DEV | 8 | A | 80 |
| 3 | GOVIND | 7 | A | 90 |
| 5 | HARI | 7 | A | 75 |
| 2 | PALASH | 9 | B | 85 |
| 8 | JAY | 8 | B | 79 |
| 9 | OM | 9 | C | 71 |
| 10 | NAYAN | 6 | D | 83 |
+-------+---------+-------+------+-------+
10 rows in set (0.00 sec)

OBSERVATION:-

CODE/COMMAND:- SELECT * FROM CLASS12 ORDER BY SEC,MARKS,SNAME,CLASS DESC;


RESULT:-

+-------+---------+-------+------+-------+
| SR_NO | SNAME | CLASS | SEC | MARKS |
+-------+---------+-------+------+-------+
| 5 | HARI | 7 | A | 75 |
| 6 | DEV | 8 | A | 80 |
| 4 | HARSHIT | 9 | A | 80 |
| 1 | NIHAL | 8 | A | 80 |
| 7 | KRISH | 9 | A | 81 |
| 3 | GOVIND | 7 | A | 90 |
| 8 | JAY | 8 | B | 79 |
| 2 | PALASH | 9 | B | 85 |
| 9 | OM | 9 | C | 71 |
| 10 | NAYAN | 6 | D | 83 |
+-------+---------+-------+------+-------+
10 rows in set (0.00 sec)

OBSERVATION:-

PRACTICAL NO :-6

AIM:-study of group by clause in sql

OBJECTIVE:-applying group by clause in the table data

THEORY:-through group by clause we can divide the data in the groups and
aggregate function can be applied by groupwise

mysql> SELECT * FROM CLASS12;


+-------+---------+-------+------+-------+
| SR_NO | SNAME | CLASS | SEC | MARKS |
+-------+---------+-------+------+-------+
| 1 | NIHAL | 8 | A | 80 |
| 2 | PALASH | 9 | B | 85 |
| 3 | GOVIND | 7 | A | 90 |
| 4 | HARSHIT | 9 | A | 80 |
| 5 | HARI | 7 | A | 75 |
| 6 | DEV | 8 | A | 80 |
| 7 | KRISH | 9 | A | 81 |
| 8 | JAY | 8 | B | 79 |
| 9 | OM | 9 | C | 71 |
| 10 | NAYAN | 6 | D | 83 |
+-------+---------+-------+------+-------+
10 rows in set (0.00 sec)

there are different types of examples shown here:-

CODE/COMMAND:- SELECT SNAME,MAX(MARKS) FROM CLASS12 GROUP BY SNAME;

RESULT:-

+---------+------------+
| SNAME | MAX(MARKS) |
+---------+------------+
| NIHAL | 80 |
| PALASH | 85 |
| GOVIND | 90 |
| HARSHIT | 80 |
| HARI | 75 |
| DEV | 80 |
| KRISH | 81 |
| JAY | 79 |
| OM | 71 |
| NAYAN | 83 |
+---------+------------+
10 rows in set (0.00 sec)

OBSERVATION:-
CODE/COMMAND:- SELECT CLASS,MAX(MARKS) FROM CLASS12 GROUP BY CLASS;

RESULT:-

+-------+------------+
| CLASS | MAX(MARKS) |
+-------+------------+
| 8 | 80 |
| 9 | 85 |
| 7 | 90 |
| 6 | 83 |
+-------+------------+
4 rows in set (0.01 sec)

OBSERVATION:-

CODE/COMMAND:- SELECT SEC,MAX(MARKS) FROM CLASS12 GROUP BY SEC;

RESULT:-

+------+------------+
| SEC | MAX(MARKS) |
+------+------------+
| A | 90 |
| B | 85 |
| C | 71 |
| D | 83 |
+------+------------+
4 rows in set (0.00 sec)

OBSERVATION:-

CODE/COMMAND:- SELECT CLASS,COUNT(SEC) FROM CLASS12 GROUP BY CLASS


HAVING COUNT(SEC)>'A';

RESULT:-
+-------+------------+
| CLASS | COUNT(SEC) |
+-------+------------+
| 8 | 3 |
| 9 | 4 |
| 7 | 2 |
| 6 | 1 |
+-------+------------+
4 rows in set, 1 warning (0.00 sec)

OBSERVATION:-

CODE/COMMAND:- SELECT AVG(MARKS),SUM(MARKS) FROM CLASS12 GROUP BY


CLASS HAVING CLASS='8';

RESULT:-

+------------+------------+
| AVG(MARKS) | SUM(MARKS) |
+------------+------------+
| 79.6667 | 239 |
+------------+------------+
1 row in set (0.00 sec)

OBSERVATION:-

CODE/COMMAND:- SELECT AVG(MARKS),SUM(MARKS) FROM CLASS12 GROUP BY


CLASS HAVING SUM(MARKS) BETWEEN 80 AND 100;

RESULT:-
+------------+------------+
| AVG(MARKS) | SUM(MARKS) |
+------------+------------+
| 83.0000 | 83 |
+------------+------------+
1 row in set (0.00 sec)

OBSERVATION:-

You might also like