Copyright © Oracle Corporation, 2001. All rights reserved. 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
1-3 Copyright © Oracle Corporation, 2001. All rights reserved. Capabilities of SQL SELECT Statements Selection Projection Table 1 Table 2 Table 1 Table 1 Join
1-4 Copyright © Oracle Corporation, 2001. All rights reserved. Basic SELECT Statement SELECT *|{[DISTINCT] column|expression [alias],...} FROM table; • SELECT identifies what columns • FROM identifies which table
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_id FROM departments;
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
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
1-10 Copyright © Oracle Corporation, 2001. All rights reserved. Using Arithmetic Operators SELECT last_name, salary, salary + 300 FROM employees; …
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. * / + _
1-12 Copyright © Oracle Corporation, 2001. All rights reserved. Operator Precedence SELECT last_name, salary, 12*salary+100 FROM employees; …
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_pct FROM employees; … …
1-15 Copyright © Oracle Corporation, 2001. All rights reserved. SELECT last_name, 12*salary*commission_pct FROM employees; Null Values in Arithmetic Expressions Arithmetic expressions containing a null value evaluate 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 the column name and alias • Requires double quotation marks if it contains spaces or special characters or is case sensitive
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 comm FROM 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
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 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.
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; …
1-22 Copyright © Oracle Corporation, 2001. All rights reserved. Duplicate Rows The default display of queries is all rows, including duplicate rows. SELECT department_id FROM employees; …
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_id FROM employees;
1-24 Copyright © Oracle Corporation, 2001. All rights reserved. SQL and iSQL*Plus Interaction SQL statements Oracle server Query results iSQL*Plus commands Client Formatted report Internet Browser iSQL*Plus
1-25 Copyright © Oracle Corporation, 2001. All rights reserved. SQL Statements Versus iSQL*Plus Commands SQL statements SQL • A language • ANSI standard • Keyword cannot be abbreviated • Statements manipulate data and table definitions in the database iSQL*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 iSQL*Plus commands
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
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 9 10
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] tablename
1-30 Copyright © Oracle Corporation, 2001. All rights reserved. Displaying Table Structure DESCRIBE employees
1-31 Copyright © Oracle Corporation, 2001. All rights reserved. Interacting with Script Files SELECT last_name, hire_date, salary FROM employees; 1 2
1-32 Copyright © Oracle Corporation, 2001. All rights reserved. Interacting with Script Files 1 D:tempemp_sql.htm SELECT last_name, hire_date, salary FROM employees; 3
1-33 Copyright © Oracle Corporation, 2001. All rights reserved. Interacting with Script Files DESCRIBE employees SELECT first_name, last_name, job_id FROM employees; 1 2 3
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 column headings • Use the iSQL*Plus environment to write, save, and execute SQL statements and iSQL*Plus commands.
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

Database Management Systems SQL And DDL language

  • 1.
    Copyright © OracleCorporation, 2001. All rights reserved. Writing Basic SQL SELECT Statements
  • 2.
    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
  • 3.
    1-3 Copyright ©Oracle Corporation, 2001. All rights reserved. Capabilities of SQL SELECT Statements Selection Projection Table 1 Table 2 Table 1 Table 1 Join
  • 4.
    1-4 Copyright ©Oracle Corporation, 2001. All rights reserved. Basic SELECT Statement SELECT *|{[DISTINCT] column|expression [alias],...} FROM table; • SELECT identifies what columns • FROM identifies which table
  • 5.
    1-5 Copyright ©Oracle Corporation, 2001. All rights reserved. SELECT * FROM departments; Selecting All Columns
  • 6.
    1-6 Copyright ©Oracle Corporation, 2001. All rights reserved. Selecting Specific Columns SELECT department_id, location_id FROM departments;
  • 7.
    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.
  • 8.
    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
  • 9.
    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
  • 10.
    1-10 Copyright ©Oracle Corporation, 2001. All rights reserved. Using Arithmetic Operators SELECT last_name, salary, salary + 300 FROM employees; …
  • 11.
    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. * / + _
  • 12.
    1-12 Copyright ©Oracle Corporation, 2001. All rights reserved. Operator Precedence SELECT last_name, salary, 12*salary+100 FROM employees; …
  • 13.
    1-13 Copyright ©Oracle Corporation, 2001. All rights reserved. Using Parentheses SELECT last_name, salary, 12*(salary+100) FROM employees; …
  • 14.
    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_pct FROM employees; … …
  • 15.
    1-15 Copyright ©Oracle Corporation, 2001. All rights reserved. SELECT last_name, 12*salary*commission_pct FROM employees; Null Values in Arithmetic Expressions Arithmetic expressions containing a null value evaluate to null. … …
  • 16.
    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
  • 17.
    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 comm FROM employees; … …
  • 18.
    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
  • 19.
    1-19 Copyright ©Oracle Corporation, 2001. All rights reserved. Using the Concatenation Operator SELECT last_name||job_id AS "Employees" FROM employees; …
  • 20.
    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 each row returned.
  • 21.
    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; …
  • 22.
    1-22 Copyright ©Oracle Corporation, 2001. All rights reserved. Duplicate Rows The default display of queries is all rows, including duplicate rows. SELECT department_id FROM employees; …
  • 23.
    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_id FROM employees;
  • 24.
    1-24 Copyright ©Oracle Corporation, 2001. All rights reserved. SQL and iSQL*Plus Interaction SQL statements Oracle server Query results iSQL*Plus commands Client Formatted report Internet Browser iSQL*Plus
  • 25.
    1-25 Copyright ©Oracle Corporation, 2001. All rights reserved. SQL Statements Versus iSQL*Plus Commands SQL statements SQL • A language • ANSI standard • Keyword cannot be abbreviated • Statements manipulate data and table definitions in the database iSQL*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 iSQL*Plus commands
  • 26.
    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
  • 27.
    1-27 Copyright ©Oracle Corporation, 2001. All rights reserved. Logging In to iSQL*Plus From your Windows browser environment:
  • 28.
    1-28 Copyright ©Oracle Corporation, 2001. All rights reserved. The iSQL*Plus Environment 3 4 5 6 1 2 8 9 10
  • 29.
    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] tablename
  • 30.
    1-30 Copyright ©Oracle Corporation, 2001. All rights reserved. Displaying Table Structure DESCRIBE employees
  • 31.
    1-31 Copyright ©Oracle Corporation, 2001. All rights reserved. Interacting with Script Files SELECT last_name, hire_date, salary FROM employees; 1 2
  • 32.
    1-32 Copyright ©Oracle Corporation, 2001. All rights reserved. Interacting with Script Files 1 D:tempemp_sql.htm SELECT last_name, hire_date, salary FROM employees; 3
  • 33.
    1-33 Copyright ©Oracle Corporation, 2001. All rights reserved. Interacting with Script Files DESCRIBE employees SELECT first_name, last_name, job_id FROM employees; 1 2 3
  • 34.
    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 column headings • Use the iSQL*Plus environment to write, save, and execute SQL statements and iSQL*Plus commands.
  • 35.
    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