0% found this document useful (0 votes)
17 views

Lab 03

This document provides an overview of single-row SQL functions. It discusses character functions like LOWER, UPPER, and CONCAT that manipulate character strings. Number functions like ROUND, TRUNC, and MOD that perform calculations are also covered. The document reviews how to work with dates in SQL, including the RR date format and functions like SYSDATE, MONTHS_BETWEEN, and ADD_MONTHS that perform date arithmetic and manipulation. Examples are given for how to use various single-row functions to customize output.

Uploaded by

mariamhossam243
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
17 views

Lab 03

This document provides an overview of single-row SQL functions. It discusses character functions like LOWER, UPPER, and CONCAT that manipulate character strings. Number functions like ROUND, TRUNC, and MOD that perform calculations are also covered. The document reviews how to work with dates in SQL, including the RR date format and functions like SYSDATE, MONTHS_BETWEEN, and ADD_MONTHS that perform date arithmetic and manipulation. Examples are given for how to use various single-row functions to customize output.

Uploaded by

mariamhossam243
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 29

Using Single-Row Functions to

Customize Output
Lesson Agenda

• Single-row SQL functions


• Character functions
• Number functions
• Working with dates
• Date functions

3-2
SQL Functions

Input Output

Function

arg 1 Function performs


action
arg 2
Result
value

arg n

3-3
Two Types of SQL Functions

Functions

Single-row Multiple-row
functions
functions
Return one result Return one result
per row per set of rows

3-4
Single-Row Functions

Single-row functions:
• Manipulate data items
• Accept arguments and return one value
• Act on each row that is returned
• Return one result per row
• May modify the data type
• Can be nested
• Accept arguments that can be a column or an expression

function_name [(arg1, arg2,...)]

3-5
Single-Row Functions

Single-row
Character Number
functions

Date

3-6
Lesson Agenda

• Single-row SQL functions


• Character functions
• Number functions
• Working with dates
• Date functions

3-7 Copyright © 2009, Oracle. All rights reserved.


Character Functions

Character

functions

Case-conversion Character-manipulation
functions functions

LOWER CONCAT
UPPER
INITCAP SUBSTR

LENGTH
INSTR
LPAD | RPAD
TRIM
3-8 REPLACE
Case-Conversion Functions

These functions convert the case for character strings:


Function Result
LOWER('SQL Course') sql course
UPPER('SQL Course') SQL COURSE
INITCAP('SQL Course') Sql Course

3 - 11
Using Case-Conversion Functions

Display the employee number, name, and department number


for employee Higgins:
SELECT employee_id, last_name, department_id
FROM employees
WHERE last_name = 'higgins';

SELECT employee_id, last_name, department_id


FROM employees
WHERE LOWER(last_name) = 'higgins';

3 - 12
Character-Manipulation Functions

These functions manipulate character strings:

Function Result
CONCAT('Hello', 'World') HelloWorld
SUBSTR('HelloWorld',1,5) Hello
LENGTH('HelloWorld') 10
INSTR('HelloWorld', 'W') 6
LPAD(salary,10,'*') *****24000
RPAD(salary, 10, '*') 24000*****
REPLACE BLACK and BLUE
('JACK and JUE','J','BL')
TRIM('H' FROM 'HelloWorld') elloWorld

3 - 13
Using the Character-Manipulation Functions

1
SELECT employee_id, CONCAT(first_name, last_name) NAME,
job_id, LENGTH (last_name), 2
INSTR(last_name, 'a') "Contains 'a'?"
FROM employees 3
WHERE SUBSTR(job_id, 4) = 'REP';

1 2 3

3 - 14
Lesson Agenda

• Single-row SQL functions


• Character functions
• Number functions
• Working with dates
• Date Functions

3 - 15
Number Functions

• ROUND: Rounds value to a specified decimal


• TRUNC: Truncates value to a specified decimal
• MOD: Returns remainder of division

Function Result
ROUND(45.926, 2) 45.93
TRUNC(45.926, 2) 45.92
MOD(1600, 300) 100

3 - 16
Using the ROUND
Function

1 2
SELECT ROUND(45.923,2), ROUND(45.923,0),
ROUND(45.923,-1) 3
FROM DUAL;

1 2 3

DUAL is a dummy table that you can use to view


results from functions and calculations.

3 - 17
Using the TRUNC
Function

1 2
SELECT TRUNC(45.923,2), TRUNC(45.923),
TRUNC(45.923,-1) 3
FROM DUAL;

1 2 3

3 - 18
Using the MOD
Function
For all employees with the job title of Sales Representative,
calculate the remainder of the salary after it is divided by 5,000.

SELECT last_name, salary, MOD(salary, 5000)


FROM employees
WHERE job_id = 'SA_REP';

3 - 19
Lesson Agenda

• Single-row SQL functions


• Character functions
• Number functions
• Working with dates
• Date functions

3 - 20
Working with Dates

• The Oracle database stores dates in an internal numeric


format: century, year, month, day, hours, minutes, and
seconds.
• The date display format is DD-MON-RR.
– Enables you to store 21st-century dates in the 20th century
by specifying only the last two digits of the year
– Enables you to store 20th-century dates in the
21st century in the same way

SELECT last_name, hire_date


FROM employees
WHERE hire_date < '01-
FEB-88';

3 - 21
RR Date
Format

Current
Current Year
Year Specified Date RR Format YY Format
1995 27-OCT-95 1995 1995
1995 27-OCT-17 2017 1917
2001 27-OCT-17 2017 2017
2001 27-OCT-95 1995 2095

If the specified two-digit year is:

0–49 50–99
If two digits The return date is in The return date is in
of the 0–49 the current century the century before
current the current one
year are: The return date is in The return date is in
50–99 the century after the current century
the current one

3 - 22
Using the SYSDATE
Function
SYSDATE is a function that
returns:
• Date

SELECT sysdate
FROM dual;

3 - 24
Arithmetic with Dates

• Add or subtract a number to or from a date for a resultant


date value.
• Subtract two dates to find the number of days between
those dates.

3 - 25
Using Arithmetic Operators
with Dates

SELECT last_name, (SYSDATE-hire_date)/7 AS WEEKS


FROM employees
WHERE
department_id =
90;

3 - 26
Lesson Agenda

• Single-row SQL functions


• Character functions
• Number functions
• Working with dates
• Date functions

3 - 27
Date-Manipulation Functions

Function Result
MONTHS_BETWEEN Number of months between two dates
ADD_MONTHS Add calendar months to date
NEXT_DAY Next day of the date specified
LAST_DAY Last day of the month
ROUND Round date
TRUNC Truncate date

3 - 28
Using Date Functions

Function Result
MONTHS_BETWEEN 19.6774194
('01-SEP-95','11-JAN-94')
ADD_MONTHS (‘31-JAN-96',1) ‘29-FEB-96'
NEXT_DAY ('01-SEP-95','FRIDAY') '08-SEP-95'
LAST_DAY ('01-FEB-95') '28-FEB-95'

3 - 29
Using ROUND and TRUNC Functions with
Dates
Assume SYSDATE = '25-JUL-
03':
Function Result
ROUND(SYSDATE,'MONTH') 01-AUG-03
ROUND(SYSDATE ,'YEAR') 01-JAN-04
TRUNC(SYSDATE ,'MONTH') 01-JUL-03
TRUNC(SYSDATE ,'YEAR') 01-JAN-03

3 - 30
Quiz

Which of the following statements are true about single-row


functions?
1. Manipulate data items
2. Accept arguments and return one value per argument
3. Act on each row that is returned
4. Return one result per set of rows
5. Can be nested
6. Accept arguments that can be a column or an
expression

3 - 31
Thank You

You might also like