SQL Notes
SQL Notes
CONTENTS
1.FUNDAMENTALS OF SQL
2.FILTERING COMMANDS
3.ORDERING COMMANDS
4.ALIAS
5.AGGREGATE COMMANDS
6.GROUP BY COMMANDS
7.CONDITIONAL STATEMENT
8.JOINS
9.SUBQUERY
10.VIEW & INDEX
11.STRING FUNCTIONS
12.MATHEMATICAL FUNCTIONS
13. DATE-TIME FUNCTIONS
14.PATTERN MATCHING(regex)
15.DATA TYPE CONVERSION FUNCTIONS
Mandar Patil
DQL(Data Query Language)
To fetch the data from the database
Example: SELECT
Mandar Patil
1.Fundamentals of SQL
CREATE
Syntax:
CREATE TABLE ‘’TABLE_NAME’’(
‘’COLUMN1’’ ‘’DATA_TYPE’’ CONSTRAINTS,
‘’COLUMN2’’ ‘’DATA_TYPE’’ CONSTRAINTS,
‘’COLUMN3’’ ‘’DATA_TYPE’’ CONSTRAINTS,
………………………………………………………………..
‘’COLUMN N’’ ‘’DATA_TYPE’’ CONSTRAINTS
);
INSERT
Mandar Patil
Syntax:
INSERT INTO
“TABLE_NAME” (COL1, COL2, ……..COL_N)
VALUES (Col_val_1,Col_val_2, ……. Col_val_N);
SELECT
Syntax
SELECT * FROM “TABLE_NAME”;
Mandar Patil
For select one column
SELECT “COLUMN_NAME” FROM “TABLE_NAME”;
For select multiple columns
SELECT “COLUMN1,COLUMN2,…”
FROM “TABLE_NAME”;
For select all columns
SELECT * FROM “TABLE_NAME”;
DISTINCT
Syntax:
SELECT DISTINCT(*) FROM “TABLE_NAME”;
WHERE
Syntax:
SELECT “COLUMN_NAME(S)”
Mandar Patil
FROM “TABLE_NAME “
WHERE CONDITION;
AND/OR
The AND/OR is used to combine multiple conditions
Syntax:
SELECT “COLUMN_NAMES(s)”
FROM “TABLE_NAME”
WHERE CONDITION AND/OR CONDITION;
UPDATE
Syntax:
UPDATE “TABLE_NAME”
SET COL_1=VAL_1,COL_2=VAL_2,…
WHERE CONDITION;
DELETE
Mandar Patil
Syntax:
For delete all rows
DELETE FROM “TABLE_NAME”;
For delete single/multiple row(s)
DELETE FROM “TABLE_NAME “
WHERE CONDITION;
ALTER
Syntax:
ADD COLUMN
ALTER TABLE “ TABLE_NAME”
ADD “COLUMN_NAME “ “DATA_TYPE”;
DROP COLUMN
ALETR TABLE “TABLE_NAME”
DROP “COLUMN_NAME”;
MODIFY DATA TYPE
ALTER TABLE “TABLE_NAME”
ALTER COLUMN “COL_NAME” TYPE NEW_DATA_TYPE;
Mandar Patil
RENAME COLUMN
ALTER TABLE “TABLE_NAME”
RENAME COLUMN “COL_NAME” TO “NEW_NAME”;
ADD CONSTRAINTS
ALTER TABLE “TABLE_NAME”
ADD CONSTRAINT COL_NAME CHECK CONDITION;
2.Filtering Commands
IN
Syntax:
SELECT “COL_NAME” FROM “TABLE_NAME”
WHERE “COL_NAME” IN (‘VAL1’, ’VAL2’,…);
BETWEEN
Mandar Patil
Syntax:
SELECT “COL_NAME(S)” FROM “TABLE_NAME”
WHERE “COL_NAME” BETWEEN “VAL1” AND “VAL2”;
LIKE
Syntax:
SELECT “COL_NAME” FROM “TABLE_NAME”
WHERE “COL_NAME” LIKE ‘PATTERN’;
3.Ordering Commands
ORDER BY
Mandar Patil
Syntax:
SELECT “COL_NAME(s)” FROM “TABLE_NAME”
ORDER BY “COL_NAME” ASC/DESC;
LIMIT
Syntax:
SELECT “COL_NAME(S)” FROM “TABLE_NAME”
[WHERE & ORDER BY – Optional]
LIMIT “LIMIT_VALUE”;
4.ALIAS
AS
Mandar Patil
Syntax:
SELECT “COL_NAME” as “COL_ALIAS”
FROM “TABLE_NAME”;
5.AGGREGATE COMMANDS
COUNT
Syntax:
SELECT COUNT(COL_NAME) FROM “TABLE_NAME”;
SUM
Syntax:
SELECT SUM(COL_NAME) FROM “TABLE_NAME”;
Mandar Patil
AVG
Syntax:
SELECT AVG(COL_NAME) FROM “TABLE_NAME”;
MIN
Syntax:
SELECT MIN(COL_NAME) FROM “TABLE_NAME”;
MAX
Syntax:
SELECT MAX(COL_NAME) FROM “TABLE_NAME”;
Mandar Patil
6.GROUP BY COMMANDS
GROUP BY
Syntax:
SELECT “COL_1”, “COL_2”,…… FROM “TABLE_NAME”
GROUP BY “COL_NAME”;
HAVING
Syntax:
SELECT “COL_1”, “COL_2”,…… FROM “TABLE_NAME”
GROUP BY “COL_NAME”
HAVING ‘CONDITION’;
Mandar Patil
7.CONDITIONAL STATEMENT
CASE
Syntax:
CASE
WHEN CONDITION THEN RESULT
[WHEN CONDITION THEN RESULT]
[WHEN CONDITION THEN RESULT]
ELSE RESULT
END
8.JOINS
JOINS used to fetch data from multiple tables
TYPES:
INNER JOIN
Mandar Patil
Syntax:
SELECT COL1,COL2,…..
FROM “TABLE_1”
INNER JOIN “TABLE_2”
ON TABLE_1. COMMON_COL = TABLE_2. COMMON_COL;
LEFT JOIN
Syntax:
SELECT COL_1,COL_2,…
FROM “TABLE_1”
LEFT JOIN “TABLE_2”
ON TABLE_1. COMMON_COL = TABLE_2. COMMON_COL;
RIGHT JOIN
Mandar Patil
Syntax:
SELECT COL_1,COL_2,…
FROM “TABLE_1”
RIGHT JOIN “TABLE_2”
ON TABLE_1.COMMON_COL = TABLE_2. COMMON_COL;
FULL JOIN
Syntax:
SELECT COL_1,COL_2,…
FROM “TABLE_1”
FULL JOIN “TABLE_2”
ON TABLE_1.COMMON_COL = TABLE_2. COMMON_COL;
CROSS JOIN
Syntax:
Mandar Patil
SELECT TAB1.COL,TAB2.COL,…..
FROM “TABLE_1”, “TABLE_2”,……..
EXCEPT
Syntax:
SELECT COL1,COL2,……..
FROM TABLE_A [WHERE]
EXCEPT
SELECT COL_1,COL_2,……
FROM TABLE_B [WHERE];
UNION
Syntax:
SELECT COL1,COL2,……..
FROM TABLE_A [WHERE]
UNION
SELECT COL_1,COL_2,……
FROM TABLE_B [WHERE];
Mandar Patil
SUBQUERY
VIEW
INDEX
Mandar Patil
An INDEX creates an entry for each value that
appears in the indexed column
Syntax:
CREATE[UNIQUE] INDEX “index_name”
ON “TABLE_NAME”
(index_col1 [ASC/DESC],………..
11.STRING FUNCTIONS
LENGTH:
UPPER/LOWER
Mandar Patil
lower(‘string’)
REPLACE
TRIM
RTRIM
LTRIM
Mandar Patil
LTRIM function removes all specified characters
from LHS of the string
Syntax:
LTRIM(‘string’, trim char)
CONCATENATION
SUBSTRING
STRING_AGG
Mandar Patil
String aggregate function concatenates input
values into a string, separated by a delimiter
Syntax
STRING_AGG(‘expression’, delimiter)
12.MATHEMATICAL FUNCTIONS
CEIL
FLOOR
Mandar Patil
RANDOM
SETSEED
ROUND
Mandar Patil
POWER
CURRENT_DATE
CURRENT_TIME
Mandar Patil
CURRENT_TIMESTAMP
AGE
EXTRACT
Mandar Patil
14.PATTERN MATCHING
There are three different approaches to pattern
matching
• Using LIKE
• Using SIMILAR TO
• Using Regular Expression
TO_CHAR
Mandar Patil
TO_CHAR(value,format-mask)
TO_DATE
T0_NUMBER
Format Description
. decimal point
(period)
Mandar Patil
Format Description
MI Minus sign in the specified position for numbers that are less than
0.
PL Plus sign in the specified position for numbers that are greater
than 0.
Pattern Description
Mandar Patil
YY last 2 digits of year
Mandar Patil
Day Full lowercase day name
W Week of month (1-5) (the first week starts on the first day
of the month)
Mandar Patil
Rm Month in lowercase Roman numerals (i-xii; >
MI Minute (0-59)
SS Second (0-59)
MS Millisecond (000-999)
US Microsecond (000000-999999)
Mandar Patil