sql les01
TRANSCRIPT
-
8/14/2019 SQL Les01
1/40
1Copyright Oracle Corporation, 2001. All rights reserved.
Writing Basic
SQL SELECT Statements
-
8/14/2019 SQL Les01
2/40
1-2 Copyright Oracle Corporation, 2001. All rights reserved.
Objectives
After completing this lesson, you should be able todo the following:
List the capabilities of SQL SELECT statements
Execute a basic SELECT statement Differentiate between SQL statements and
iSQL*Plus commands
-
8/14/2019 SQL Les01
3/40
1-3 Copyright Oracle Corporation, 2001. All rights reserved.
Capabilities of SQL SELECT Statements
SelectionProjection
Table 1 Table 2
Table 1Table 1
Join
-
8/14/2019 SQL Les01
4/40
1-4 Copyright Oracle Corporation, 2001. All rights reserved.
Basic SELECT Statement
SELECT *|{[DISTINCT] column|expression [alias],...}FROM table;
SELECT identifies whatcolumns
FROMidentifies which table
-
8/14/2019 SQL Les01
5/40
1-5 Copyright Oracle Corporation, 2001. All rights reserved.
SELECT *FROM departments;
Selecting All Columns
-
8/14/2019 SQL Les01
6/40
1-6 Copyright Oracle Corporation, 2001. All rights reserved.
Selecting Specific Columns
SELECT department_id, location_idFROM departments;
-
8/14/2019 SQL Les01
7/401-7 Copyright Oracle Corporation, 2001. All rights reserved.
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.
-
8/14/2019 SQL Les01
8/401-8 Copyright Oracle Corporation, 2001. All rights reserved.
Column Heading Defaults
iSQL*Plus: Default heading justification: Center
Default heading display: Uppercase
SQL*Plus: Character and Date column headings are left-
justified
Number column headings are right-justified
Default heading display: Uppercase
-
8/14/2019 SQL Les01
9/401-9 Copyright Oracle Corporation, 2001. All rights reserved.
Arithmetic Expressions
Create expressions with number and date data byusing arithmetic operators.
Operator
+
-
*
/
Description
Add
Subtract
Multiply
Divide
-
8/14/2019 SQL Les01
10/401-10 Copyright Oracle Corporation, 2001. All rights reserved.
Using Arithmetic Operators
SELECT last_name, salary, salary + 300FROM employees;
-
8/14/2019 SQL Les01
11/401-11 Copyright Oracle Corporation, 2001. All rights reserved.
Operator Precedence
Multiplication and division take priority overaddition and subtraction.
Operators of the same priority are evaluated fromleft to right.
Parentheses are used to force prioritizedevaluation and to clarify statements.
** // ++ __
-
8/14/2019 SQL Les01
12/401-12 Copyright Oracle Corporation, 2001. All rights reserved.
Operator Precedence
SELECT last_name, salary, 12*salary+100FROM employees;
-
8/14/2019 SQL Les01
13/401-13 Copyright Oracle Corporation, 2001. All rights reserved.
Using Parentheses
SELECT last_name, salary, 12*(salary+100)FROM employees;
-
8/14/2019 SQL Les01
14/401-14 Copyright Oracle Corporation, 2001. All rights reserved.
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.
ECT last_name, job_id, salary, commission_pctM employees;
-
8/14/2019 SQL Les01
15/401-15 Copyright Oracle Corporation, 2001. All rights reserved.
SELECT last_name, 12*salary*commission_pctFROM employees;
Null Values
in Arithmetic Expressions
Arithmetic expressions containing a null valueevaluate to null.
-
8/14/2019 SQL Les01
16/401-16 Copyright Oracle Corporation, 2001. All rights reserved.
Defining a Column Alias
A column alias:
Renames a column heading
Is useful with calculations
Immediately follows the column name - there canalso be the optionalAS keyword between thecolumn name and alias
Requires double quotation marks if it contains
spaces or special characters or is case sensitive
-
8/14/2019 SQL Les01
17/401-17 Copyright Oracle Corporation, 2001. All rights reserved.
Using Column Aliases
SELECT last_name "Name", salary*12 "Annual Salary"FROM employees;
SELECT last_name AS name, commission_pct commFROM employees;
-
8/14/2019 SQL Les01
18/401-18 Copyright Oracle Corporation, 2001. All rights reserved.
Concatenation Operator
A concatenation operator:
Concatenates columns or character strings toother columns
Is represented by two vertical bars (||) Creates a resultant column that is a character
expression
-
8/14/2019 SQL Les01
19/401-19 Copyright Oracle Corporation, 2001. All rights reserved.
Using the Concatenation Operator
SELECT last_name||job_id AS "Employees"FROM employees;
-
8/14/2019 SQL Les01
20/401-20 Copyright Oracle Corporation, 2001. All rights reserved.
Literal Character Strings
A literal is a character, a number, or a dateincluded 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.
-
8/14/2019 SQL Les01
21/401-21 Copyright Oracle Corporation, 2001. All rights reserved.
Using Literal Character Strings
SELECT last_name ||' is a '||job_idAS "Employee Details"
FROM employees;
-
8/14/2019 SQL Les01
22/40
1-22 Copyright Oracle Corporation, 2001. All rights reserved.
Duplicate Rows
The default display of queries is all rows, including
duplicate rows.
SELECT department_idFROM employees;
-
8/14/2019 SQL Les01
23/40
1-23 Copyright Oracle Corporation, 2001. All rights reserved.
Eliminating Duplicate Rows
Eliminate duplicate rows by using the DISTINCTkeyword in the SELECT clause.
SELECT DISTINCT department_idFROM employees;
-
8/14/2019 SQL Les01
24/40
1-24 Copyright Oracle Corporation, 2001. All rights reserved.
SQL and iSQL*Plus Interaction
SQL statements
Oracleserver
Query resultsQuery resultsiSQL*Plus
commands
Client
Formatted report
InternetInternet
BrowserBrowser
iiSQL*PlusSQL*Plus
-
8/14/2019 SQL Les01
25/40
1-25 Copyright Oracle Corporation, 2001. All rights reserved.
SQL Statements Versus
iSQL*Plus Commands
SQLSQL
statementsstatements
SQL A language
ANSI standard
Keyword cannot beabbreviated
Statements manipulatedata and table definitionsin the database
iiSQL*PlusSQL*Plus An environment
Oracle proprietary
Keywords can beabbreviated
Commands do not allowmanipulation of values inthe database
Runs on a browser
Centrally loaded, does not
have to be implementedon each machine
iiSQL*PlusSQL*Plus
commandscommands
-
8/14/2019 SQL Les01
26/40
1-26 Copyright Oracle Corporation, 2001. All rights reserved.
Overview ofiSQL*Plus
After you log into iSQL*Plus, you can:
Describe the table structure
Edit your SQL statement
Execute SQL from iSQL*Plus
Save SQL statements to files and append SQLstatements to files
Execute statements stored in saved files
Load commands from a text file into the iSQL*PlusEdit window
-
8/14/2019 SQL Les01
27/40
1-27 Copyright Oracle Corporation, 2001. All rights reserved.
Logging In to iSQL*Plus
From your Windows browser environment:
-
8/14/2019 SQL Les01
28/40
1-28 Copyright Oracle Corporation, 2001. All rights reserved.
The iSQL*Plus Environment
3 4 5
6
71
2
8 910
-
8/14/2019 SQL Les01
29/40
1-29 Copyright Oracle Corporation, 2001. All rights reserved.
Displaying Table Structure
Use the iSQL*Plus DESCRIBE command to displaythe structure of a table.
DESC[RIBE] tablename
-
8/14/2019 SQL Les01
30/40
1-30 Copyright Oracle Corporation, 2001. All rights reserved.
Displaying Table Structure
DESCRIBE employees
-
8/14/2019 SQL Les01
31/40
1-31 Copyright Oracle Corporation, 2001. All rights reserved.
Interacting with Script Files
SELECT last_name, hire_date, salaryFROM employees; 1
2
-
8/14/2019 SQL Les01
32/40
1-32 Copyright Oracle Corporation, 2001. All rights reserved.
Interacting with Script Files
1
D:\temp\emp_sql.htm
2SELECT last_name, hire_date, salaryFROM employees;
3
-
8/14/2019 SQL Les01
33/40
1-33 Copyright Oracle Corporation, 2001. All rights reserved.
Interacting with Script Files
DESCRIBE employeesSELECT first_name, last_name, job_idFROM employees;
1
23
-
8/14/2019 SQL Les01
34/40
1-34 Copyright Oracle Corporation, 2001. All rights reserved.
Summary
SELECT *|{[DISTINCT] column|expression [alias],...}FROM table;
In this lesson, you should have learned how to:
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 columnheadings
Use the iSQL*Plus environment to write, save, andexecute SQL statements and iSQL*Plus commands.
-
8/14/2019 SQL Les01
35/40
1-35 Copyright Oracle Corporation, 2001. All rights reserved.
Practice 1 Overview
This practice covers the following topics:
Selecting all data from different tables
Describing the structure of tables
Performing arithmetic calculations and specifyingcolumn names
Using iSQL*Plus
-
8/14/2019 SQL Les01
36/40
1-36 Copyright Oracle Corporation, 2001. All rights reserved.
-
8/14/2019 SQL Les01
37/40
1-37 Copyright Oracle Corporation, 2001. All rights reserved.
-
8/14/2019 SQL Les01
38/40
1-38 Copyright Oracle Corporation, 2001. All rights reserved.
-
8/14/2019 SQL Les01
39/40
1-39 Copyright Oracle Corporation, 2001. All rights reserved.
-
8/14/2019 SQL Les01
40/40