writing basic sql select statementsfaculty.pucit.edu.pk/fakhra/dbms(labs) 2013/study...
Post on 05-Apr-2018
223 Views
Preview:
TRANSCRIPT
<DBMS - Lab> <Notes -1>
1Copyright © Oracle Corporation, 2001. All rights reserved.
Writing BasicSQL SELECT Statements
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
<DBMS - Lab> <Notes -1>
1-3 Copyright © Oracle Corporation, 2001. All rights reserved.
Capabilities of SQL SELECT Statements
SelectionProjection
Table 1 Table 2
Table 1Table 1
Join
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
<DBMS - Lab> <Notes -1>
1-5 Copyright © Oracle Corporation, 2001. All rights reserved.
SELECT *FROM departments;
Selecting All Columns
1-6 Copyright © Oracle Corporation, 2001. All rights reserved.
Selecting Specific Columns
SELECT department_id, location_idFROM departments;
<DBMS - Lab> <Notes -1>
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 split
across lines.• Clauses are usually placed on separate lines.• Indents are used to enhance readability.
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
<DBMS - Lab> <Notes -1>
1-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
1-10 Copyright © Oracle Corporation, 2001. All rights reserved.
Using Arithmetic Operators
SELECT last_name, salary, salary + 300FROM employees;
…
<DBMS - Lab> <Notes -1>
1-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.
**** //// ++++ ____
1-12 Copyright © Oracle Corporation, 2001. All rights reserved.
Operator Precedence
SELECT last_name, salary, 12*salary+100FROM employees;
…
<DBMS - Lab> <Notes -1>
1-13 Copyright © Oracle Corporation, 2001. All rights reserved.
Using Parentheses
SELECT last_name, salary, 12*(salary+100)FROM employees;
…
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;
…
…
<DBMS - Lab> <Notes -1>
1-15 Copyright © Oracle Corporation, 2001. All rights reserved.
SELECT last_name, 12*salary*commission_pctFROM employees;
Null Valuesin Arithmetic Expressions
Arithmetic expressions containing a null valueevaluate to null.
…
…
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 thecolumn name and alias
• Requires double quotation marks if it containsspaces or special characters or is case sensitive
<DBMS - Lab> <Notes -1>
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;
…
…
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
<DBMS - Lab> <Notes -1>
1-19 Copyright © Oracle Corporation, 2001. All rights reserved.
Using the Concatenation Operator
SELECT last_name||job_id AS "Employees"FROM employees;
…
1-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 enclosedwithin single quotation marks.
• Each character string is output once for eachrow returned.
<DBMS - Lab> <Notes -1>
1-21 Copyright © Oracle Corporation, 2001. All rights reserved.
Using Literal Character Strings
SELECT last_name ||' is a '||job_idAS "Employee Details"
FROM employees;
…
1-22 Copyright © Oracle Corporation, 2001. All rights reserved.
Duplicate Rows
The default display of queries is all rows, includingduplicate rows.SELECT department_idFROM employees;SELECT department_idFROM employees;
…
<DBMS - Lab> <Notes -1>
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;
1-24 Copyright © Oracle Corporation, 2001. All rights reserved.
SQL and iSQL*Plus Interaction
SQL statementsOracleserver
Query resultsQuery resultsiSQL*Pluscommands
Client
Formatted report
InternetInternetBrowserBrowser
iiSQL*PlusSQL*Plus
<DBMS - Lab> <Notes -1>
1-25 Copyright © Oracle Corporation, 2001. All rights reserved.
SQL Statements VersusiSQL*Plus Commands
SQLSQLstatementsstatements
SQL• A language• ANSI standard• Keyword cannot be
abbreviated• Statements manipulate
data and table definitionsin the database
iiSQL*PlusSQL*Plus• An environment• Oracle proprietary• Keywords can be
abbreviated• Commands do not allow
manipulation of values inthe database
• Runs on a browser• Centrally loaded, does not
have to be implementedon each machine
iiSQL*PlusSQL*Pluscommandscommands
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
<DBMS - Lab> <Notes -1>
1-27 Copyright © Oracle Corporation, 2001. All rights reserved.
Logging In to iSQL*Plus
From your Windows browser environment:
1-28 Copyright © Oracle Corporation, 2001. All rights reserved.
The iSQL*Plus Environment
3 4 5
6
1
2
8 910
<DBMS - Lab> <Notes -1>
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] tablenameDESC[RIBE] tablename
1-30 Copyright © Oracle Corporation, 2001. All rights reserved.
Displaying Table Structure
DESCRIBE employeesDESCRIBE employees
<DBMS - Lab> <Notes -1>
1-31 Copyright © Oracle Corporation, 2001. All rights reserved.
Interacting with Script Files
SELECT last_name, hire_date, salaryFROM employees; 1
2
1-32 Copyright © Oracle Corporation, 2001. All rights reserved.
Interacting with Script Files
1
D:\temp\emp_sql.htm
SELECT last_name, hire_date, salaryFROM employees;
3
<DBMS - Lab> <Notes -1>
1-33 Copyright © Oracle Corporation, 2001. All rights reserved.
Interacting with Script Files
DESCRIBE employeesSELECT first_name, last_name, job_idFROM employees;
1
23
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.
<DBMS - Lab> <Notes -1>
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
top related