writing basic sql select statements

35
1 Copyright © Oracle Corporation, 2001. All rights reserved. Writing Basic SQL SELECT Statements

Upload: rollo

Post on 13-Jan-2016

51 views

Category:

Documents


0 download

DESCRIPTION

Writing Basic SQL SELECT Statements. Objectives. After completing this lesson, you should be able to do the following: List the capabilities of SQL SELECT statements Execute a basic SELECT statement Differentiate between SQL statements and i SQL*Plus commands. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Writing Basic  SQL SELECT Statements

1Copyright © Oracle Corporation, 2001. All rights reserved.

Writing Basic SQL SELECT Statements

Page 2: Writing Basic  SQL SELECT Statements

1-2 Copyright © Oracle Corporation, 2001. All rights reserved.

Objectives

After completing this lesson, you should be able to do the following:

• List the capabilities of SQL SELECT statements

• Execute a basic SELECT statement

• Differentiate between SQL statements and iSQL*Plus commands

Page 3: Writing Basic  SQL SELECT Statements

1-3 Copyright © Oracle Corporation, 2001. All rights reserved.

Capabilities of SQL SELECT Statements

SelectionProjection

Table 1 Table 2

Table 1Table 1

Join

Page 4: Writing Basic  SQL SELECT Statements

1-4 Copyright © Oracle Corporation, 2001. All rights reserved.

Basic SELECT Statement

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

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

• SELECT identifies what columns

• FROM identifies which table

Page 5: Writing Basic  SQL SELECT Statements

1-5 Copyright © Oracle Corporation, 2001. All rights reserved.

SELECT *FROM departments;

Selecting All Columns

Page 6: Writing Basic  SQL SELECT Statements

1-6 Copyright © Oracle Corporation, 2001. All rights reserved.

Selecting Specific Columns

SELECT department_id, location_idFROM departments;

Page 7: Writing Basic  SQL SELECT Statements

1-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 splitacross lines.

• Clauses are usually placed on separate lines.

• Indents are used to enhance readability.

Page 8: Writing Basic  SQL SELECT Statements

1-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

Page 9: Writing Basic  SQL SELECT Statements

1-9 Copyright © Oracle Corporation, 2001. All rights reserved.

Arithmetic Expressions

Create expressions with number and date data by using arithmetic operators.

Operator

+

-

*

/

Description

Add

Subtract

Multiply

Divide

Page 10: Writing Basic  SQL SELECT Statements

1-10 Copyright © Oracle Corporation, 2001. All rights reserved.

Using Arithmetic Operators

SELECT last_name, salary, salary + 300FROM employees;

Page 11: Writing Basic  SQL SELECT Statements

1-11 Copyright © Oracle Corporation, 2001. All rights reserved.

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.

**** //// ++++ ____

Page 12: Writing Basic  SQL SELECT Statements

1-12 Copyright © Oracle Corporation, 2001. All rights reserved.

Operator Precedence

SELECT last_name, salary, 12*salary+100FROM employees;

Page 13: Writing Basic  SQL SELECT Statements

1-13 Copyright © Oracle Corporation, 2001. All rights reserved.

Using Parentheses

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

Page 14: Writing Basic  SQL SELECT Statements

1-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.

SELECT last_name, job_id, salary, commission_pctFROM employees;

Page 15: Writing Basic  SQL SELECT Statements

1-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 value evaluate to null.

Page 16: Writing Basic  SQL SELECT Statements

1-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 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

Page 17: Writing Basic  SQL SELECT Statements

1-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;

Page 18: Writing Basic  SQL SELECT Statements

1-18 Copyright © Oracle Corporation, 2001. All rights reserved.

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

Page 19: Writing Basic  SQL SELECT Statements

1-19 Copyright © Oracle Corporation, 2001. All rights reserved.

Using the Concatenation Operator

SELECT last_name||job_id AS "Employees"FROM employees;

Page 20: Writing Basic  SQL SELECT Statements

1-20 Copyright © Oracle Corporation, 2001. All rights reserved.

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 eachrow returned.

Page 21: Writing Basic  SQL SELECT Statements

1-21 Copyright © Oracle Corporation, 2001. All rights reserved.

Using Literal Character Strings

SELECT last_name ||' is a '||job_id AS "Employee Details"FROM employees;

Page 22: Writing Basic  SQL SELECT Statements

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;

SELECT department_idFROM employees;

Page 23: Writing Basic  SQL SELECT Statements

1-23 Copyright © Oracle Corporation, 2001. All rights reserved.

Eliminating Duplicate Rows

Eliminate duplicate rows by using the DISTINCT keyword in the SELECT clause.

SELECT DISTINCT department_idFROM employees;

Page 24: Writing Basic  SQL SELECT Statements

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

Internet Internet BrowserBrowser

iiSQL*PlusSQL*Plus

Page 25: Writing Basic  SQL SELECT Statements

1-25 Copyright © Oracle Corporation, 2001. All rights reserved.

SQL Statements Versus iSQL*Plus Commands

SQLSQLstatementsstatements

SQL

• A language

• ANSI standard

• Keyword cannot be abbreviated

• Statements manipulate data and table definitions in the database

iiSQL*PlusSQL*Plus

• An environment

• Oracle proprietary

• Keywords can be abbreviated

• Commands do not allow manipulation of values in the database

• Runs on a browser

• Centrally loaded, does not have to be implemented on each machine

iiSQL*PlusSQL*Pluscommandscommands

Page 26: Writing Basic  SQL SELECT Statements

1-26 Copyright © Oracle Corporation, 2001. All rights reserved.

Overview of iSQL*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 SQL statements to files

• Execute statements stored in saved files

• Load commands from a text file into the iSQL*Plus Edit window

Page 27: Writing Basic  SQL SELECT Statements

1-27 Copyright © Oracle Corporation, 2001. All rights reserved.

Logging In to iSQL*Plus

From your Windows browser environment:

Page 28: Writing Basic  SQL SELECT Statements

1-28 Copyright © Oracle Corporation, 2001. All rights reserved.

The iSQL*Plus Environment

3 4 5

6

71

2

8 910

Page 29: Writing Basic  SQL SELECT Statements

1-29 Copyright © Oracle Corporation, 2001. All rights reserved.

Displaying Table Structure

Use the iSQL*Plus DESCRIBE command to display the structure of a table.

DESC[RIBE] tablenameDESC[RIBE] tablename

Page 30: Writing Basic  SQL SELECT Statements

1-30 Copyright © Oracle Corporation, 2001. All rights reserved.

Displaying Table Structure

DESCRIBE employeesDESCRIBE employees

Page 31: Writing Basic  SQL SELECT Statements

1-31 Copyright © Oracle Corporation, 2001. All rights reserved.

Interacting with Script Files

SELECT last_name, hire_date, salaryFROM employees; 1

2

Page 32: Writing Basic  SQL SELECT Statements

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

Page 33: Writing Basic  SQL SELECT Statements

1-33 Copyright © Oracle Corporation, 2001. All rights reserved.

Interacting with Script Files

DESCRIBE employeesSELECT first_name, last_name, job_idFROM employees;

1

23

Page 34: Writing Basic  SQL SELECT Statements

1-34 Copyright © Oracle Corporation, 2001. All rights reserved.

Summary

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

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 column headings

• Use the iSQL*Plus environment to write, save, and execute SQL statements and iSQL*Plus commands.

Page 35: Writing Basic  SQL SELECT Statements

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 specifying column names

• Using iSQL*Plus