SQL 1st

Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 77

DBMS -SQL

SQL

• SQL stands for Structured Query Language. It is used for storing and
managing data in relational database management system (RDMS).
• It is a standard language for Relational Database System. It enables a
user to create, read, update and delete relational databases and tables.
• All the RDBMS like MySQL, Informix, Oracle, MS Access and SQL
Server use SQL as their standard database language.
• SQL allows users to query the database in a number of ways, using
English-like statements.
Advantages of SQL

There are the following advantages of SQL:


•High speed: Using the SQL queries, the user can quickly and efficiently retrieve a large
amount of records from a database.
•No coding needed: In the standard SQL, it is very easy to manage the database system. It
doesn't require a substantial amount of code to manage the database system.
•Well defined standards: Long established are used by the SQL databases that are being used
by ISO and ANSI.
•Portability: SQL can be used in laptop, PCs, server and even some mobile phones.
•Interactive language: SQL is a domain language used to communicate with the database. It is
also used to receive answers to the complex questions in seconds.
•Multiple data view: Using the SQL language, the users can make different views of the
database structure.
SQL Datatype

• SQL Datatype is used to define the values that a column can contain.
• Every column is required to have a name and data type in the
database table.
1. Binary Datatypes
2. Approximate Numeric Datatype :
3. Exact Numeric Datatype
4. Character String Datatype
5. Date and time Datatypes
Capabilities of SQL SELECT Statements
Projection Selection

Table 1 Table 1

Join

Table 1 Table 2
Basic SELECT Statement
SELECT *|{[DISTINCT] column|expression [alias],...}
FROM table;

• SELECT identifies what columns


• FROM identifies which table
Selecting All Columns
SELECT *
FROM departments;
Selecting Specific Columns
SELECT department_id, location_id
FROM departments;
Writing SQL Statements
• SQL statements are not case sensitive.
• SQL statements can be on one or more lines.
• Keywords cannot be abbreviated or split
across lines.
• Clauses are usually placed on separate lines.
• Indents are used to enhance readability.
SQL Comparison Operators:
Arithmetic Expressions
Create expressions with number and date data by using
arithmetic operators.

Operator Description

+ Add

- Subtract

* Multiply

/ Divide
Using Arithmetic Operators
SELECT last_name, salary, salary + 300
FROM employees;


Operator Precedence
_
* / +

• Multiplication and division take priority over addition and


subtraction.
• Operators of the same priority are evaluated from left to
right.
• Parentheses are used to force prioritized evaluation and to
clarify statements.
Operator Precedence
SELECT last_name, salary, 12*salary+100
FROM employees;


Using Parentheses
SELECT last_name, salary, 12*(salary+100)
FROM employees;


Defining a Null Value
• A null is a value that is unavailable, unassigned, unknown,
or inapplicable.
• A null is not the same as zero or a blank space.
SELECT last_name, job_id, salary, commission_pct
FROM employees;


Null Values
in Arithmetic Expressions
Arithmetic expressions containing a null value
evaluate to null.
SELECT last_name, 12*salary*commission_pct
FROM employees;


Defining a Column Alias
A column alias:
• Renames a column heading
• Is useful with calculations
• Immediately follows the column name - there can also be
the optional AS keyword between the column name and
alias
• Requires double quotation marks if it contains spaces or
special characters or is case sensitive
Using Column Aliases
SELECT last_name AS NAME, commission_pct comm
FROM employees;

SELECT last_name "Name", salary*12 "Annual Salary"


FROM employees;


Concatenation Operator
A concatenation operator:
• Concatenates columns or character strings to other
columns
• Is represented by two vertical bars (||)
• Creates a resultant column that is a character expression
Using the Concatenation Operator
SELECT last_name||job_id AS "Employees"
FROM employees;


Literal Character Strings
• A literal is a character, a number, or a date included in the
SELECT list.
• Date and character literal values must be enclosed within
single quotation marks.
• Each character string is output once for each
row returned.
Using Literal Character Strings

SELECT last_name ||' is a '||job_id


AS "Employee Details"
FROM employees;


Duplicate Rows
The default display of queries is all rows, including
duplicate rows.
SELECT department_id
FROM employees;


Eliminating Duplicate Rows
Eliminate duplicate rows by using the DISTINCT
keyword in the SELECT clause.
SELECT DISTINCT department_id
FROM employees;
Displaying Table Structure
Use the iSQL*Plus DESCRIBE command to display
the structure of a table.

DESC[RIBE] tablename
Displaying Table Structure
DESCRIBE employees
Summary
• Write a SELECT statement that:
– Returns all rows and columns from a table
– Returns specified columns from a table
– Uses column aliases to give descriptive column
headings

SELECT *|{[DISTINCT] column|expression [alias],...}


FROM table;
Restricting and Sorting Data
Objectives
After completing this lesson, you should be able to do the
following:
• Limit the rows retrieved by a query
• Sort the rows retrieved by a query
Limiting Rows Using a Selection
EMPLOYEES

“retrieve all
employees
in department 90”
Limiting the Rows Selected
• Restrict the rows returned by using the WHERE clause.

SELECT *|{[DISTINCT] column|expression [alias],...}


FROM table
[WHERE condition(s)];
• The WHERE clause follows the FROM clause.
Using the WHERE Clause

SELECT employee_id, last_name, job_id, department_id


FROM employees
WHERE department_id = 90 ;
Character Strings and Dates
• Character strings and date values are enclosed
in single quotation marks.
• Character values are case sensitive, and date
values are format sensitive.

SELECT last_name, job_id, department_id


FROM employees
WHERE last_name = 'Whalen';
Comparison Conditions
Operator Meaning

= Equal to

> Greater than

>= Greater than or equal to

Less than
<
Less than or equal to
<=
Not equal to

<>
Using Comparison Conditions

SELECT last_name, salary


FROM employees
WHERE salary <= 3000;
Other Comparison Conditions
Operator Meaning

BETWEEN Between two values (inclusive),


...AND...

IN(set) Match any of a list of values

LIKE Match a character pattern

IS NULL Is a null value


Using the BETWEEN Condition
Use the BETWEEN condition to display rows based on a range
of values.
SELECT last_name, salary
FROM employees
WHERE salary BETWEEN 2500 AND 3500;

Lower limit Upper limit


Using the IN Condition
Use the IN membership condition to test for values
in a list.

SELECT employee_id, last_name, salary, manager_id


FROM employees
WHERE manager_id IN (100, 101, 201);
Using the LIKE Condition
• Use the LIKE condition to perform wildcard searches
of valid search string values.
• Search conditions can contain either literal characters
or numbers:
• % denotes zero or many characters.
• _ denotes one character.

SELECT first_name
FROM employees
WHERE first_name LIKE 'S%';
Using the LIKE Condition
• You can combine pattern-matching characters.
SELECT last_name
FROM employees
WHERE last_name LIKE '_o%';

• You can use the ESCAPE identifier to search for the actual
% and _ symbols.
Using the NULL Conditions
Test for nulls with the IS NULL operator.

SELECT last_name, manager_id


FROM employees
WHERE manager_id IS NULL;
Logical Conditions
Operator Meaning

AND Returns TRUE if both component


conditions are true
OR Returns TRUE if either component
condition is true

NOT Returns TRUE if the following


condition is false
Using the AND Operator
AND requires both conditions to be true.

SELECT employee_id, last_name, job_id, salary


FROM employees
WHERE salary >=10000
AND job_id LIKE '%MAN%';
Using the OR Operator
OR requires either condition to be true.
SELECT employee_id, last_name, job_id, salary
FROM employees
WHERE salary >= 10000
OR job_id LIKE '%MAN%';
Using the NOT Operator
SELECT last_name, job_id
FROM employees
WHERE job_id
NOT IN ('IT_PROG', 'ST_CLERK', 'SA_REP');
SQL Aggregate Functions
1. COUNT FUNCTION

•COUNT function is used to Count the number of rows in a database table. It can
work on both numeric and non-numeric data types.
•COUNT function uses the COUNT(*) that returns the count of all the rows in a
specified table. COUNT(*) considers duplicate and Null.
Syntax
1.COUNT(*)  
2.or  
3.COUNT( [ALL|DISTINCT] expression )  
2. SUM Function
3. AVG function
4. MAX Function
5. MIN Function
1. GROUP BY
• SQL GROUP BY statement is used to arrange identical data into groups. The
GROUP BY statement is used with the SQL SELECT statement.
• The GROUP BY statement follows the WHERE clause in a SELECT statement and
precedes the ORDER BY clause.
• The GROUP BY statement is used with aggregation function.
Sample table: PRODUCT_MAST
2. HAVING

•HAVING clause is used to specify a search condition for a group or an aggregate.


•Having is used in a GROUP BY clause. If you are not using GROUP BY clause then
you can use HAVING function like a WHERE clause.
ORDER BY Clause
• Sort rows with the ORDER BY clause
• ASC: ascending order, default
• DESC: descending order
• The ORDER BY clause comes last in the SELECT statement.
SELECT last_name, job_id, department_id, hire_date
FROM employees
ORDER BY hire_date ;


Sorting in Descending Order
SELECT last_name, job_id, department_id, hire_date
FROM employees
ORDER BY hire_date DESC ;


Sorting by Column Alias
SELECT employee_id, last_name, salary*12 annsal
FROM employees
ORDER BY annsal;


Summary
In this lesson, you should have learned how to:
• Use the WHERE clause to restrict rows of output
– Use the comparison conditions
– Use the BETWEEN, IN, LIKE, and NULL conditions
– Apply the logical AND, OR, and NOT operators
• Use the ORDER BY clause to sort rows of output

SELECT *|{[DISTINCT] column|expression [alias],...}


FROM table
[WHERE condition(s)]
[ORDER BY {column, expr, alias} [ASC|DESC]];
Practice 2 Overview
This practice covers the following topics:
• Selecting data and changing the order of
rows displayed
• Restricting rows by using the WHERE clause
• Sorting rows by using the ORDER BY clause
SQL JOIN
SQL Set Operation
Union All operation is equal to the Union
operation. It returns the set without removing
duplication and sorting the data.

You might also like