0% found this document useful (0 votes)
56 views30 pages

Class 11 Ip Chapter 8 2024-2025

Uploaded by

sg9870938
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)
56 views30 pages

Class 11 Ip Chapter 8 2024-2025

Uploaded by

sg9870938
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/ 30

KENDRIYA VIDYALAYA

LEKHAPANI
IP
CLASS 11 2024-2025
CHAPTER 8
STRUCTURED QUERY
LANGUAGE
(SQL)
WHAT IS SQL?

SQL STANDS FOR STRUCTURED QUERY LANGUAGE. IT IS DEVELOPED TO MANAGE DATABASE. SQL
ENABLE US TO CREATE DATABASE, INSERT DATA, AND UPDATE DATA AS PER REQUIREMENT AND
RETRIEVE DATA.

WHAT ARE THE CATEGORIES OF SQL COMMANDS?

ALL SQL COMMANDS ARE CATEGORIZED IN TWO TYPES:

DATA DEFINITION LANGUAGE (DDL)


DATA MANIPULATION LANGUAGE (DML)

DATA DEFINITION LANGUAGE (DDL)

DDL IS USED TO DEFINE STRUCTURE AND CONSTRAINTS OF DATA


IT ALSO DEFINES KEY CONSTRAINTS, RELATIONSHIPS BETWEEN TABLES, AND OTHER DATA
VALIDATION CONSTRAINTS.
EXAMPLE OF DDL COMMANDS ARE:
CREATE DATABASE – CREATES A NEW DATABASE
CREATE TABLE – CREATES A NEW TABLE
ALTER TABLE – MODIFIES A TABLE
DROP TABLE – DELETES A TABLE

DATA MANIPULATION LANGUAGE (DML)


DML IS USED TO INSERT, MODIFY AND DELETE DATA IN A
DATABASE. EXAMPLE OF DML COMMANDS ARE:
SELECT – EXTRACTS DATA FROM A
TABLE UPDATE – UPDATES DATA IN A
TABLE
DELETE – DELETES DATA FROM A TABLE
INSERT INTO – INSERTS NEW DATA INTO A TABLE

WHAT IS MYSQL?

MYSQL IS ONE OF THE MOST POPULAR RELATIONAL DATABASE MANAGEMENT SYSTEM


(RDBMS).
MYSQL WAS ORIGINALLY FOUNDED AND DEVELOPED IN SWEDEN BY DAVID AXMARK, ALLAN
LARSSON AND MICHAEL WIDENIUS, WHO HAD WORKED TOGETHER SINCE THE 1980S.

CHARACTERISTICS OF MYSQL

IT IS FREE AND OPEN SOURCE SOFTWARE WHICH DOES NOT REQUIRE TO PAY FOR ITS
USAGE. IT IS EASY TO USE, QUICK AND RELIABLE.
IT IS PLATFORM INDEPENDENT SOFTWARE WHICH WORKS ON MANY OPERATING
SYSTEMS LIKE WINDOWS, UNIX, LINUX ETC.
IT IS COMPATIBLE WITH MANY PROGRAMMING LANGUAGES INCLUDING JAVA, C++, PHP,
PERL, ETC.
IT CAN HANDLE LARGE AMOUNT OF DATA VERY EFFICIENTLY AND ACCURATELY.

WHAT ARE THE DATATYPES USED IN MYSQL?

GIVEN TABLE SHOWS DATA TYPES COMMONLY USED IN SQL.

DATA TYPE USE EXAMPLE

FIXED LENGTH CHARACTER STRING. N DENOTES MAX NO CHAR(6) : SANJAY,


CHAR(N)
OF CHARACTERS. HARISH

VARCHAR(N) VARIABLE LENGTH CHARACTER STRING. N DENOTES MAX VARCHAR(10): RAM,


NO
OF CHARACTERS. ARJUN

DATE DATE AS YYYY-MM-DD ‘2022-07-23’

INTEGER WHOLE NUMBER 45, 4539

FIXED POINT NUMBER. M DENOTES NO OF DIGITS DECIMAL(3,2): 34.89


DECIMAL(M,D)
STORED FOR VALUES AND D DENOTES NO OF DECIMAL(4): 2813
DECIMAL POINTS.

FLOAT REAL NUMBER 456.23


CREATING A DATABASE

TO CREATE A DATABASE WE WILL GIVE CREATE DATABASE COMMAND.

SYNTAX

CREATE DATABASE <DATABASE NAME>;

EXAMPLE:

USING A DATABASE

TO OPEN THE DATABASE TO WORK USE STATEMENTS IS USED.

SYNTAX

USE <DATABASENAME>;

EXAMPLE:
VIEWING THE CURRENT DATABASE

TO VIEW THE NAME OF CURRENT DATABASE WE CAN USE SELECT DATABASE(); COMMAND.

SYNTAX

SELECT DATABASE();

DROP DATABASE

TO DELETE A DATABASE WE CAN USE DROP DATABASE COMMAND.

SYNTAX:

DROP DATABASE <DATABASE NAME>;

SHOW TABLES

TO DISPLAY LIST OF TABLES STORED IN A DATABASE WE CAN USE SHOW TABLES COMMAND.

SYNTAX:
SHOW TABLES;

CREATE TABLE COMMAND

THIS COMMAND IS USED TO CREATE A NEW TABLE OR RELATION.

SYNTAX:

CREATE TABLE<TABLE NAME> (


<COLUMN 1><DATA TYPE> [CONSTRAINT] ,
<COLUMN 2><DATA TYPE>[CONSTRAINT],
<COLUMN 3><DATA TYPE>[CONSTRAINT]
);

NOTE: [CONSTRAINT] IS OPTIONAL

EXAMPLE:

CREATE TABLE ITEM (


ITEMNO CHAR(5) PRIMARY
KEY, ITEMNAME
VARCHAR(20), RATE FLOAT
NOT NULL,
QTY INT
);
WHAT ARE TYPES OF DATABASE CONSTRAINTS?

DATABASE ENFORCES 5 TYPES OF CONSTRAINTS MENTIONED HEREUNDER:

NOT NULL

SOMETIMES AN ATTRIBUTE MAY NOT BE ALLOWED TO LEAVE BLANK. HENCE NOT NULL
CONSTRAINTS CAN BE ASSOCIATED IN THIS CASE.

EXAMPLE:

CREATE TABLE TEACHER (


TEACHER_ID INTEGER,
FIRST_NAMEVARCHAR(20) NOT NULL,
LAST_NAMEVARCHAR(20),
GENDER CHAR(1),
DATE_OF_BIRTH DATE,
SALARY FLOAT,
);

DEFAULT

TO MAKE A VALUE BYDEFAULT FOR AN ATTRIBUTE DEFAULT CONSTRAINT CAN BE USED.


CREATE TABLE TEACHER (
TEACHER_ID INTEGER,
FIRST_NAMEVARCHAR(20) NOT NULL,
LAST_NAMEVARCHAR(20),
GENDER CHAR(1),
DATE_OF_BIRTH DATE,
SALARY FLOAT DEFAULT 20000,
);

PRIMARY KEY

IT ENSURES FOLLOWINGS WHEN APPLIED:

DUPLICATE DATA IS NOT ALLOWED IN THE


ATTRIBUTE. ATTRIBUTE CAN NOT BE LEFT BLANK
A RELATION CAN HAVE ONLY PRIMARY

KEY EXAMPLE:
FOREIGN KEY

IT ENSURES RELATIONSHIP BETWEEN RELATIONS. THE MAIN PURPOSE OF THIS CONSTRAINT IS TO CHECK
THAT DATA ENTERED IN ONE RELATION IS CONSISTENT WITH THE DATA ENTERED IN ANOTHER RELATION.

EXAMPLE:

CONSIDER THE FOLLOWING TABLES:


ITEM (ITEMNO, INAME, RATE)
ORDER (ONO, ODATE, INO, QTY, TOTAL)

HERE IN THIS EXAMPLE INO IS THE FOREIGN KEY THAT REFERENCES INO OF ITEM TABLE WHICH IS
PRIMARY KEY.

THE SQL COMMAND FOR MAKING INO TO FOREIGN KEY IN ORDER TABLE IS AS FOLLOWS:

CREATE
ORDER (
ONO INT PRIMARY
KEY, ODATE DATE,
ITEMNO INT,
QTY INT,
TOTAL INT,
FOREIGN KEY (ITEMNO) REFERENCES ITEM (ITEMNO)
);
SCREEN SHOT:

UNIQUE KEY

IT ENSURES FOLLOWINGS WHEN APPLIED:

DUPLICATE DATA IS NOT ALLOWED IN THE


ATTRIBUTE. A RELATION CAN HAVE MULTIPLE
UNIQUE KEYS

EXAMPLE:

CREATE TABLE EMPLOYEE (


EMP_ID INTEGER PRIMARY KEY, EMP_NAMEVARCHAR(20)
NOT NULL,
GENDER CHAR(1),
DATE_OF_BIRTH
DATE, SALARY FLOAT,
DEPT VARCHAR(20) UNIQUE
);
VIEWING STRUCTURE OF TABLE | DESCRIBE COMMAND

WE CAN USE DESCRIBE OR DESC COMMAND TO VIEW THE STRUCTURE OF A TABLE AS


MENTIONED IN CREATE TABLE COMMAND.
IT DISPLAY TABLE STRUCTURE INCLUDING ATTRIBUTES, DATA TYPES AND CONSTRAINTS .

SYNTAX:

DESCRIBE <TABLE NAME>;


OR
DESC <TABLE NAME>;

EXAMPLE:

DROP TABLE

THIS COMMAND IS USED TO DELETE A TABLE COMPLETELY FROM DATABASE. IT DELETES STRUCTURE
AND DATA BOTH OF TABLE FROM DATABASE.

SYNTAX:

DROP TABLE <TABLE NAME>;

EXAMPLE:
DROP TABLE ORDERS;

HOW TO MODIFY STRUCTURE OF TABLE?

ALTER TABLE

IT IS USED TO MODIFY STRUCTURE OF A TABLE. FOLLOWING ARE THE ALTERATION CAN BE DONE USING
THIS COMMAND:

ADDING A COLUMN

WE CAN ADD A NEW COLUMN IN EXISTING TABLE.

EXAMPLE:

ALTER TABLE ITEM ADD DATE_OF_PURCHASE DATE NOT NULL;

DROPPING A COLUMN

A COLUMN CAN BE DROPPED USING ALTER TABLE COMMAND AS GIVEN BELOW:


EXAMPLE:

ALTER TABLE ITEM DROP QTY;

MODIFYING A TABLE:

A COLUMN CAN ALSO BE MODIFIED USING ALTER TABLE COMMAND AS GIVEN BELOW:

ALTER TABLE ITEM MODIFY QTY SET DEFAULT 100;


HOW TO ADD PRIMARY KEY?

ALTER TABLE ITEM ADD PRIMARY KEY INO;

HOW TO DROP PRIMARY KEY?


ALTER TABLE ITEM DROP PRIMARY KEY;

DML

INSERT COMMAND

THIS COMMAND IS USED TO INSERT A TUPLE IN A RELATION. WE MUST SPECIFY THE NAME OF THE
RELATION IN WHICH TUPLE IS TO BE INSERTED AND THE VALUES. THE VALUES MUST BE IN THE SAME
ORDER AS SPECIFIED DURING THE CREATE TABLE COMMAND.

SYNTAX:

INSERT INTO <TABLENAME> VALUES (<VALUES >);

EXAMPLE: INSERTING VALUES IN TABLE ITEM (INO, INAME, RATE, QTY)

INSERT INTO ITEM VALUES (1, ‘SOAP’,44,120);

SCREENSHOT:
UPDATE COMMAND

UPDATE COMMAND IS USED TO MODIFY THE ATTRIBUTE VALUES OF ONE OR MORE TUPLES IN A

TABLE. SYNTAX:

UPDATE <TABLENAME>
SET <EXPRESSION> WHERE
<CRITERIA>

EXAMPLE:

UPDATE ITEM
SET RATE = 30
WHERE ITEMNO = ‘I0001’;

SCREENSHOT:
DELETE COMMAND

TO DELETE ONE OR MORE TUPLES (ROWS) IN A REALTION DELETE COMMAND IS USED.

SYNTAX:

DELETE FROM <TABLENAME>


WHERE <CRITERIA>;

EXAMPLE:

DELETE FROM ITEM WHERE ITEMNO = ‘I0002’;

SCREENSHOT:
SELECT COMMAND

SELECT COMMAND IS USED TO ACCESS OR RETRIEVE SPECIFIC OR COMPLETE SET OF RECORDS FROM
DATABASE.

SYNTAX:

SELECT <ATTRIBUTE LIST> FROM <TABLE NAME>;

QUERY1: DISPLAY ALL RECORDS FROM ITEM TABLE.


QUERY2: DISPLAY ITEMNAME WITH ITS RATE FROM ITEM TABLE.

SCREENSHOT:

QUERY3: DISPLAY NAME OF ITEMS WHICH RATE IS MORE THAN 100.

SCREENSHOT:
QUERY4: DISPLAY ITEM RECORDS WHICH NAME BEGINS WITH S.

CODE:

SELECT * FROM ITEM WHERE ITEMNAME LIKE ‘S%’;

SCREENSHOT:

QUERY5: RETRIEVE ITEM DETAILS WHICH RATE IS LESS THAN 100 AND QTY IS MORE THAN 100.

SCREENSHOT:
DISTINCT COMMAND

DISTINCT COMMAND IS USED TO ELIMINATE REPEATED DATA OF A COLUMN WHEN DISPLAY USING
SELECT COMMAND

SYNTAX:

SELECT DISTINCT(FIELD THAT CONTAINS REPEATED DATA) FROM <TABLE NAME>


WHERE <CRITERIA>;

EXAMPLE

SELECT DISTINCT(DEPT) FROM EMPLOYEE;

WHERE CLAUSE

WHERE CLAUSE ACT AS A FILTER WHILE MANIPULATE RECORDS IN SQL.


WHERE CLAUSE IS USED TO DEFINE CRITERIA FOR THE RECORDS TO BE RETRIEVED.
IT CAN BE USED WITH ANY DML COMMAND SUCH AS SELECT, DELETE AND UPDATE.
TO DEFINE CRITERIA VARIOUS OPERATORS LIKE ARITHMETIC, RANGE OR COMPARISON
OPERATORS ARE USED IN WHERE CLAUSE.

SYNTAX:
SELECT <FIELD(S)> FROM <TABLE NAME>
WHERE <CRITERIA>;

EXAMPLE:

OPERATORS USED WITH WHERE CLAUSE

ARITHMETIC
OPERATORS RELATION
OPERATORS
LOGICAL OPERATORS
BETWEEN OPERATORS
IN OPERATORS
LIKE OPERATORS

ARITHMETIC OPERATORS

WE CAN USE ARITHMETIC OPERATORS TO DEFINE EXPRESSIONS IN DML SQL COMMANDS.


ARITHMETIC OPERATORS ARE USED WITH NUMERIC VALUES.
FOLLOWING TABLE DEPICTS VARIOUS ARITHMETIC OPERATORS:

ARITHMETIC OPERATOR DESCRIPTION

+ FOR ADDING VALUES


– FOR SUBTRACTING VALUES

* FOR MULTIPLYING VALUES

/ FOR DIVIDING VALUES

% FOR FINDING REMAINDERS

RELATIONAL OPERATORS

WE CAN USE RELATIONAL OPERATORS TO COMPARE VALUES IN SQL.


MOSTLY USED TO DEFINE CRITERIA IN WHERE CLAUSE TO FILTER RECORDS.

FOLLOWING TABLE DEPICTS VARIOUS RELATIONAL OPERATORS:

RELATIONAL OPERATOR DESCRIPTION

= EQUAL TO

> GREATER THAN

< LESSER THAN

>= GREATER THAN EQUAL TO

<= LESSER THAN EQUAL TO

!= OR <> NOT EQUAL TO

LOGICAL OPERATORS

LOGICAL OPERATORS ARE USED TO COMBINE MULTIPLE CRITERIA/EXPRESSION IN DML SQL


COMMANDS
MOSTLY USED TO COMBINE CRITERIA IN WHERE CLAUSE TO FILTER RECORDS.
FOLLOWING TABLE DEPICTS VARIOUS LOGICAL OPERATORS:
LOGICAL OPERATOR DESCRIPTION

AND RETURNS TRUE WHEN ALL CRITERIA/EXPRESSIONS ARE TRUE


OR RETURNS TRUE WHEN AT LEAST A CRITERIA/EXPRESSION IS TRUE

NOT NEGATES THE RESULT


BETWEEN OPERATOR

IT IS USED TO DEFINE RANGE OF VALUES FOR A PARTICULAR FIELD IN WHERE


CLAUSE. IT CAN BE USED TO DEFINE RANGE OF NUMERICAL OR
CHRONOLOGICAL VALUES
IT INCLUDES UPPER AND LOWER BOUND GIVEN IN THE RANGE.

IN OPERATOR

IT IS USED TO SET MULTIPLE TEXT COMPARISON FOR A PARTICULAR FIELD IN WHERE


CLAUSE. IT CAN ONLY BE USED FOR TEXT COMPARISION.

LIKE OPERATOR

IT IS USED TO DEFINE STRING EXPRESSIONS (PATTERN MATCHING) IN WHERE


CLAUSE. IT USES DIFFERENT WILDCARDS (DESCRIBED IN IMAGE GIVEN BELOW) TO
DEFINE STRING EXPRESSION.

WILDCARD DESCRIPTION

% USED TO MATCH THE OCCURRENCE OF SET OF CHARACTERS OF ANY LENGTH

_ UNDERSCORE USED TO MATCH OCCURRENCE OF ANY SINGLE CHARACTER

ORDER BY CLAUSE

USED TO DISPLAY RECORDS IN SEQUENTIAL MANNER IN DATA RESULTSET RETRIEVED BY


WHERE CLAUSE.
BYDEFAULT DISPLAYS RECORDS IN ASCENDING ORDER.
KEYWORD ASC (ASCENDING) OR DESC (DESCENDING) CAN BE USED WITH ORDER BY TO
ARRANGE THE DATA RESULTSET.

EXAMPLE:
SELECT * FROM ITEM ORDER BY INAME; SELECT *
FROM ITEM OREDER BY INAME DESC;

WHAT IS NULL VALUE?

NULL REPRESENTS A MISSING OR UNKNOWN VALUE IN


SQL. NULL IS DIFFERENT FROM 0 (ZERO).
ANY ARITHMETIC OPERATION PERFORMED WITH NULL VALUE GIVE
NULL. TO CHECK FOR NULL VALUE IN A COLUMN WE USE IS NULL
OPERATOR.

EXAMPLE

AGGREGATE

FUNCTION

ARE ALSO KNOWN AS MULTIPLE ROW FUNCTIONS.


IT WORKS ON MULTIPLE ROWS TOGETHER RATHER
SINGLE ROW IT HELPS TO SUMMARIZE LARGE VOLUME
OF DATA
IT RETURNS SINGLE VALUE FOR ENTIRE TABLE OR SET OF ROWS
ONLY ONE COLUMN CAN BE SPECIFIED WITHIN PARENTHESIS OF AGGREGATE FUNCTION.
MULTIPLE AGGREGATE FUNCTIONS CAN BE USED TOGETHER IN A SQL QUERY BY SEPARATING
THEM USING COMMA.

FUNCTION DESCRIPTION EXAMPLE

SELECT SUM(QTY_SOLD) FROM


SUM(FIELD) RETURNS SUM OF ALL ROWS OF SPECIFIED
FIELD ORDER; OUTPUT: 10230

RETURNS AVERAGE OR MEAN VALUE OF ALL SELECT AVG(QTY_SOLD) FROM


AVG(FIELD)
ROWS OF SPECIFIED FIELD ORDER; OUTPUT: 780
RETURNS LARGEST VALUE AMONG ALL ROWS SELECT MAX(QTY_SOLD) FROM
MAX(FIELD)
OF SPECIFIED FIELD ORDER; OUTPUT: 1460

MIN(FIELD) RETURNS SMALLEST VALUE AMONG ALL ROWS SELECT MIN(QTY_SOLD) FROM
ORDER;
OF SPECIFIED FIELD OUTPUT: 470

COUNTS AND RETURN TOTAL ROWS OF SELECT COUNT(QTY_SOLD) FROM


COUNT(FIELD)
SPECIFIED FIELD ORDER; OUTPUT: 72

GROUP BY

THE GROUP BY CLAUSE HELPS TO SUMMARIZE LARGE VOLUME OF RECORDS. IT COMBINES ALL
THOSE RECORDS THAT HAVE IDENTICAL VALUES IN A PARTICULAR FIELD OR A GROUP OF FIELDS AND
PRODUCES ONE SUMMARY RECORD PER GROUP.

WE CAN USE AGGREGATE FUNCTIONS TO WORK ON THE GROUPED

VALUES. SYNTAX:

SELECT <FIELD(S)>, <AGGREGATE FUNCTION(S)>


FROM <TABLE NAME>
WHERE <CONDITION>
GROUP BY <FIELD(S)>

EXAMPLE:

HAVING
CLAUSE

HELPS TO FILTER SUMMARIZED RESULT PRODUCED AFTER GROUPING.


IT IS LIKE POST FILTER WHICH RETRIEVES RECORDS FROM RESULTSET PRODUCED AFTER
GROUP BY QUERY.
IT CAN INCLUDE AGGREGATE FUNCTIONS TO SET THE FILTER

CRITERIA SYNTAX:

SELECT <FIELD(S)>, <AGGREGATE FUNCTION(S)>


FROM <TABLE NAME>
WHERE <CONDITION>
GROUP BY <FIELD(S)>
HAVING <EXPRESSION>
ORDER BY <FIELD(S)> ASC/DESC

JOINS

A JOIN IA AN OPERATION WHICH IS USED TO COMBINE TUPLES FROM ONE OR MORE TABLES BASED
ON ONE OR MORE COMMON FIELD BETWEEN THEM.

IN ANOTHER WAY WE CAN SAY THAT IT IS QUERY WRITTEN TO RETRIEVES DATA FROM TWO OR MORE
TABLES AS PER GIVEN CONDITION.

DIFFERENT TYPES OF JOINS ARE:

CARTESIAN PRODUCT
EQUI JOIN
NATURALJOIN
INNER JOIN

You might also like