Retrieving Data from Multiple Tables

Size: px
Start display at page:

Download "Retrieving Data from Multiple Tables"

Transcription

1 Islamic University of Gaza Faculty of Engineering Computer Engineering Dept. Database Lab (ECOM 4113) Lab 5 Retrieving Data from Multiple Tables Eng. Mohammed Alokshiya November 2, 2014

2 An JOIN clause is used to combine rows from two or more tables, based on a common field between them. The following table lists the types the different JOINs you can use: INNER JOIN: Specifies a join between two tables with an explicit join clause. LEFT OUTER JOIN: Specifies a join between two tables with an explicit join clause, preserving unmatched rows from the first table. RIGHT OUTER JOIN: Specifies a join between two tables with an explicit join clause, preserving unmatched rows from the second table. FULL OUTER JOIN: Return all rows when there is a match in ONE of the tables. NATURAL JOIN: creates an implicit join clause for you based on the common columns in the two tables being joined. Common columns are columns that have the same name in both tables. CROSS JOIN: produces the cross-product of two tables. In general, the syntax of an JOIN clause is: JOIN Syntax SELECT TABLE1.COLUMN, TABLE2.COLUMN FROM TABLE1 [NATURAL JOIN TABLE2] [JOIN TABLE2 USING (COLUMN_NAME)] [JOIN TABLE2 ON (TABLE1.COLUMN_NAME = TABLE2.COLUMN_NAME)] [LEFT RIGHT FULL OUTER JOIN TABLE2 ON (TABLE1.COLUMN_NAME = TABLE2.COLUMN_NAME)] [CROSS JOIN TABLE2]; INNER JOIN An INNER JOIN is a JOIN operation that allows you to specify an explicit join clause. Syntax: INNER JOIN Syntax TABLE1 [INNER] JOIN TABLE2 USING (COLUMN_NAME) ON (TABLE1.COLUMN_NAME = TABLE2.COLUMN_NAME); 2

3 Example: Join the EMPLOYEES and DEPARTMENTS tables, select employee ID (EMPLOYEE_ID), employee last name, (LAST_NAME), department ID and department name (DEPARTMENT_NAME) of all employees who are hired before SELECT EMPLOYEE_ID, LAST_NAME, DEPARTMENT_ID, DEPARTMENT_NAME JOIN DEPARTMENTS USING (DEPARTMENT_ID) WHERE HIRE_DATE < '01-JAN-04'; You can also use ON clause instead of USING clause: SELECT E.EMPLOYEE_ID, E.LAST_NAME, D.DEPARTMENT_ID, D.DEPARTMENT_NAME E JOIN DEPARTMENTS D ON E.DEPARTMENT_ID = D.DEPARTMENT_ID WHERE HIRE_DATE < '01-JAN-04'; 3

4 Creating Three-Way Joins with the ON Clause A three-way join is a join of three tables. Joins are performed from left to right. Example: Write a query to retrieve first name, last name, department name and city, for all employees whose salary is greater than SELECT E.FIRST_NAME, E.LAST_NAME, E.SALARY, D.DEPARTMENT_NAME, L.CITY E JOIN DEPARTMENTS D ON E.DEPARTMENT_ID = D.DEPARTMENT_ID JOIN LOCATIONS L ON D.LOCATION_ID = L.LOCATION_ID WHERE SALARY > 9000; Example: write a query to retrieve first name, last name, job, department id, and department name for all employees who work in Toronto City. SELECT E.FIRST_NAME, E.LAST_NAME, E.JOB_ID, DEPARTMENT_ID, D.DEPARTMENT_NAME, L.CITY E JOIN DEPARTMENTS D USING (DEPARTMENT_ID) JOIN LOCATIONS L ON (D.LOCATION_ID = L.LOCATION_ID AND CITY = 'Toronto'); 4

5 Self-Join: Joining a Table to Itself Example: write a query to retrieve the first name, last name and manager full name of all employees. SELECT WORKER.FIRST_NAME, WORKER.LAST_NAME, MANAGER.FIRST_NAME ' ' MANAGER.LAST_NAME "Manager Full Name" WORKER JOIN EMPLOYEES MANAGER ON WORKER.MANAGER_ID = MANAGER.EMPLOYEE_ID; Example: write a query to retrieve employee last names, department numbers, and all the employees who work in the same department as a given employee. SELECT E.LAST_NAME, DEPARTMENT_ID, C.LAST_NAME "Colleague" E JOIN EMPLOYEES C USING (DEPARTMENT_ID) WHERE E.EMPLOYEE_ID <> C.EMPLOYEE_ID ORDER BY 2, 1; 5

6 Example: write a query to retrieve the names and hire dates of all the employees who are hired before their managers, along with their managers names and hire dates. SELECT WORKER.LAST_NAME, WORKER.HIRE_DATE, MANAGER.LAST_NAME, MANAGER.HIRE_DATE WORKER JOIN EMPLOYEES MANAGER ON WORKER.MANAGER_ID = MANAGER.EMPLOYEE_ID WHERE WORKER.HIRE_DATE < MANAGER.HIRE_DATE; 6

7 OUTER JOIN By default, joining tables with the NATURAL JOIN, USING, or ON clauses results in an inner join. Any unmatched rows are not displayed in the output. To return the unmatched rows, you can use an outer join. An outer join returns all rows that satisfy the join condition and also returns some or all of those rows from one table for which no rows from the other table satisfy the join condition. There are three types of outer joins: LEFT OUTER RIGHT OUTER FULL OUTER Syntax: OUTER JOIN Syntax TABLE1 {LEFT RIGHT FULL} [OUTER] JOIN TABLE2 USING (COLUMN_NAME) ON (TABLE1.COLUMN_NAME = TABLE2.COLUMN_NAME); Example: LEFT OUTER JOIN: SELECT LAST_NAME, DEPARTMENT_NAME E LEFT OUTER JOIN DEPARTMENTS D USING (DEPARTMENT_ID); 7

8 Example: Right OUTER JOIN: SELECT E.LAST_NAME, E.DEPARTMENT_ID, D.DEPARTMENT_ID, D.DEPARTMENT_NAME E RIGHT OUTER JOIN DEPARTMENTS D ON E.DEPARTMENT_ID = D.DEPARTMENT_ID; Example: FULL OUTER JOIN: SELECT E.LAST_NAME, E.DEPARTMENT_ID, D.DEPARTMENT_ID, D.DEPARTMENT_NAME E FULL OUTER JOIN DEPARTMENTS D ON E.DEPARTMENT_ID = D.DEPARTMENT_ID; 8

9 NATURAL JOIN operation A NATURAL JOIN is a JOIN operation that creates an implicit join clause for you based on the common columns in the two tables being joined. Common columns are columns that have the same name in both tables. A NATURAL JOIN can be an INNER join, a LEFT OUTER join, or a RIGHT OUTER join. The default is INNER join. If the SELECT statement in which the NATURAL JOIN operation appears has an asterisk (*) in the select list, the asterisk will be expanded to the following list of columns (in this order): All the common columns Every column in the first (left) table that is not a common column Every column in the second (right) table that is not a common column Example: retrieve department id, department name, location id and city for all departments. SELECT DEPARTMENT_ID, DEPARTMENT_NAME, LOCATION_ID, CITY FROM DEPARTMENTS NATURAL JOIN LOCATIONS; 9

10 Summary: 10

11 Using Subqueries to Solve Queries Example: retrieving all employees who has a salary greater than the average salaries in department 80. First solution: retrieve targeted employees with two steps; firstly, retrieve average salaries of all employees in dept. 80, then, use the result in another query. The first query: First Query SELECT AVG(SALARY) WHERE DEPARTMENT_ID = 80; Then you will get the average: Use it in a new Query: Second Query SELECT FIRST_NAME, LAST_NAME, SALARY WHERE SALARY > ; And you will get the targeted employees: A better solution is to embedded the first query in the second query in two parentheses, which is called: inner query: Solution using Inner Query SELECT FIRST_NAME, LAST_NAME, SALARY WHERE SALARY > ( SELECT AVG(SALARY) WHERE DEPARTMENT_ID = 80 ); 11

12 Types of Subqueries Single-row subqueries: Queries that return only one row from the inner SELECT statement. Multiple-row subqueries: Queries that return more than one row from the inner SELECT statement. A single-row subquery uses a single-row operator (>, <, =, <>, etc...). however, multiple-row subqueries use multiple-row operator (IN, ALL, ANY), instead of a single-row operator. The multiple-row comparison operators are: Operator IN ANY ALL Meaning Equal to any member in the list Must be preceded by =, <>, >, <, <=, >=. Compares a value to each value in a list or returned by a query. Evaluates to FALSE if the query returns no rows. Must be preceded by =, <>, >, <, <=, >=. Compares a value to every value in a list or returned by a query. Evaluates to TRUE if the query returns no rows. Example: retrieving all employees are not IT programmers and whose salary is less than that of any IT programmer. SELECT EMPLOYEE_ID, LAST_NAME, JOB_ID, SALARY WHERE SALARY < ANY (SELECT SALARY WHERE JOB_ID = 'IT_PROG' ) AND JOB_ID <> 'IT_PROG'; 12

13 Example: retrieving all employees whose salary is less than the salary of all employees with a job ID of IT_PROG and whose job is not IT_PROG. SELECT EMPLOYEE_ID, LAST_NAME, JOB_ID, SALARY WHERE SALARY < ALL (SELECT SALARY WHERE JOB_ID = 'IT_PROG' ) AND JOB_ID <> 'IT_PROG'; Example: write a query to retrieve the employee number and last name of all employees who work in a department with any employee whose last name contains the letter u. SELECT EMPLOYEE_ID, LAST_NAME WHERE DEPARTMENT_ID IN ( SELECT DISTINCT DEPARTMENT_ID WHERE LAST_NAME LIKE '%u%' ); 13

14 Example: write a query to retrieve the last name, department number, and job ID of all employees whose department location ID is SELECT LAST_NAME, DEPARTMENT_ID, JOB_ID WHERE DEPARTMENT_ID IN ( SELECT DISTINCT DEPARTMENT_ID FROM DEPARTMENTS WHERE LOCATION_ID = 1700 ); 14

15 Set Operators: Set operators are used to combine the results of two or more component queries into one result. Queries containing set operators are called compound queries. In oracle, there are 4 Set Operators: UNION: return all rows from multiple tables and eliminate any duplicate rows. A B UNION ALL: return all rows from multiple tables including all duplicate rows. INTERSECT: return all rows from multiple tables and eliminate any duplicate rows. A B MINUS: return all rows from multiple tables and eliminate any duplicate rows. A B 15

16 Example: write a query to retrieve department IDs for departments that do not contain the job ID ST_CLERK. SELECT DEPARTMENT_ID FROM DEPARTMENTS MINUS SELECT DEPARTMENT_ID WHERE JOB_ID = 'ST_CLERK'; Example: write a query to retrieve name and id for all countries that have no departments located in them. SELECT COUNTRY_ID, COUNTRY_NAME FROM COUNTRIES MINUS SELECT COUNTRY_ID, COUNTRY_NAME FROM DEPARTMENTS JOIN LOCATIONS USING (LOCATION_ID) JOIN COUNTRIES USING (COUNTRY_ID); 16

17 Exercises: 1. Write a query (without using set operators) to retrieve name and id for all countries that have no departments located in them. 2. Write a query to retrieve all employees whose salary is more than the salary of any employee from department Write a query to retrieve first name, last name, and department name, for employees whose salary is more than all their collagenous salaries in the same department. 4. Write a query to retrieve employees whose job has minimum salary 4200 and maximum salary Write a query to retrieve departments names and cities for all departments that has more than 5 employees. 17

Join, Sub queries and set operators

Join, Sub queries and set operators Join, Sub queries and set operators Obtaining Data from Multiple Tables EMPLOYEES DEPARTMENTS Cartesian Products A Cartesian product is formed when: A join condition is omitted A join condition is invalid

More information

Database Foundations. 6-9 Joining Tables Using JOIN. Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Database Foundations. 6-9 Joining Tables Using JOIN. Copyright 2014, Oracle and/or its affiliates. All rights reserved. Database Foundations 6-9 Roadmap Introduction to Oracle Application Express Structured Query Language (SQL) Data Definition Language (DDL) Data Manipulation Language (DML Transaction Control Language (TCL)

More information

Lab # 6. Using Subqueries and Set Operators. Eng. Alaa O Shama

Lab # 6. Using Subqueries and Set Operators. Eng. Alaa O Shama The Islamic University of Gaza Faculty of Engineering Department of Computer Engineering ECOM 4113: Database Lab Lab # 6 Using Subqueries and Set Operators Eng. Alaa O Shama November, 2015 Objectives:

More information

Lab # 6. Data Manipulation Language (DML)

Lab # 6. Data Manipulation Language (DML) Islamic University of Gaza Faculty of Engineering Department of Computer Engineering ECOM 4113: Lab # 6 Data Manipulation Language (DML) Eng. Haneen El-Masry December, 2014 2 Objective To be more familiar

More information

Displaying Data from Multiple Tables. Copyright 2004, Oracle. All rights reserved.

Displaying Data from Multiple Tables. Copyright 2004, Oracle. All rights reserved. Displaying Data from Multiple Tables Copyright 2004, Oracle. All rights reserved. Objectives After completing this lesson, you should be able to do the following: Write SELECT statements to access data

More information

Intermediate SQL: Aggregated Data, Joins and Set Operators

Intermediate SQL: Aggregated Data, Joins and Set Operators Intermediate SQL: Aggregated Data, Joins and Set Operators Aggregated Data and Sorting Objectives After completing this lesson, you should be able to do the following: Identify the available group functions

More information

GIFT Department of Computing Science. CS-217/224: Database Systems. Lab-5 Manual. Displaying Data from Multiple Tables - SQL Joins

GIFT Department of Computing Science. CS-217/224: Database Systems. Lab-5 Manual. Displaying Data from Multiple Tables - SQL Joins GIFT Department of Computing Science CS-217/224: Database Systems Lab-5 Manual Displaying Data from Multiple Tables - SQL Joins V3.0 5/5/2016 Introduction to Lab-5 This lab introduces students to selecting

More information

KORA. RDBMS Concepts II

KORA. RDBMS Concepts II RDBMS Concepts II Outline Querying Data Source With SQL Star & Snowflake Schemas Reporting Aggregated Data Using the Group Functions What Are Group Functions? Group functions operate on sets of rows to

More information

EXISTS NOT EXISTS WITH

EXISTS NOT EXISTS WITH Subquery II. Objectives After completing this lesson, you should be able to do the following: Write a multiple-column subquery Use scalar subqueries in SQL Solve problems with correlated subqueries Update

More information

Oracle Database SQL Basics

Oracle Database SQL Basics Oracle Database SQL Basics Kerepes Tamás, Webváltó Kft. tamas.kerepes@webvalto.hu 2015. február 26. Copyright 2004, Oracle. All rights reserved. SQL a history in brief The relational database stores data

More information

HR Database. Sample Output from TechWriter 2007 for Databases

HR Database. Sample Output from TechWriter 2007 for Databases Table of Contents...3 Tables... 4 COUNTRIES... 5 DEPARTMENTS... 6 EMPLOYEES... 7 JOBS... 9 JOB_HISTORY... 10 LOCATIONS...12 REGIONS...13 Views...14 EMP_DETAILS_VIEW... 15 Procedures...17 SECURE_DML...18

More information

ÇALIŞMA TEST SORULARI

ÇALIŞMA TEST SORULARI 1. A table has the following definition: EMPLOYEES( EMPLOYEE_ID NUMBER(6) NOT NULL, LAST_NAME VARCHAR2(10) NOT NULL, MANAGER_ID VARCHAR2(6)) and contains the following rows: (1001, 'Bob Bevan', '200')

More information

Alkérdések II. Copyright 2004, Oracle. All rights reserved.

Alkérdések II. Copyright 2004, Oracle. All rights reserved. Alkérdések II. Copyright 2004, Oracle. All rights reserved. Objectives After completing this lesson, you should be able to do the following: Write a multiple-column subquery Use scalar subqueries in SQL

More information

Using the Set Operators. Copyright 2006, Oracle. All rights reserved.

Using the Set Operators. Copyright 2006, Oracle. All rights reserved. Using the Set Operators Objectives After completing this lesson, you should be able to do the following: Describe set operators Use a set operator to combine multiple queries into a single query Control

More information

Using the Set Operators. Copyright 2004, Oracle. All rights reserved.

Using the Set Operators. Copyright 2004, Oracle. All rights reserved. Using the Set Operators Copyright 2004, Oracle. All rights reserved. Objectives After completing this lesson, you should be able to do the following: Describe set operators Use a set operator to combine

More information

Database Programming with SQL

Database Programming with SQL Database Programming with SQL 12-2 Objectives In this lesson, you will learn to: Construct and execute an UPDATE statement Construct and execute a DELETE statement Construct and execute a query that uses

More information

Database Programming with PL/SQL

Database Programming with PL/SQL Database Programming with PL/SQL 3-3 Objectives This lesson covers the following objectives: Construct and execute PL/SQL statements that manipulate data with DML statements Describe when to use implicit

More information

Additional Practice Solutions

Additional Practice Solutions Additional Practice Solutions Additional Practices Solutions The following exercises can be used for extra practice after you have discussed the data manipulation language (DML) and data definition language

More information

Restricting and Sorting Data. Copyright 2004, Oracle. All rights reserved.

Restricting and Sorting Data. Copyright 2004, Oracle. All rights reserved. Restricting and Sorting Data Objectives After completing this lesson, you should be able to do the following: Limit the rows that are retrieved by a query Sort the rows that are retrieved by a query Use

More information

Creating Other Schema Objects

Creating Other Schema Objects Creating Other Schema Objects Objectives After completing this lesson, you should be able to do the following: Create simple and complex views Retrieve data from views Database Objects Object Table View

More information

Restricting and Sorting Data. Copyright 2004, Oracle. All rights reserved.

Restricting and Sorting Data. Copyright 2004, Oracle. All rights reserved. Restricting and Sorting Data Copyright 2004, Oracle. All rights reserved. Objectives After completing this lesson, you should be able to do the following: Limit the rows that are retrieved by a query Sort

More information

Database Foundations. 6-4 Data Manipulation Language (DML) Copyright 2015, Oracle and/or its affiliates. All rights reserved.

Database Foundations. 6-4 Data Manipulation Language (DML) Copyright 2015, Oracle and/or its affiliates. All rights reserved. Database Foundations 6-4 Roadmap You are here Introduction to Oracle Application Express Structured Query Language (SQL) Data Definition Language (DDL) Data Manipulation Language (DML) Transaction Control

More information

Misc. Triggers Views Roles Sequences - Synonyms. Eng. Mohammed Alokshiya. Islamic University of Gaza. Faculty of Engineering

Misc. Triggers Views Roles Sequences - Synonyms. Eng. Mohammed Alokshiya. Islamic University of Gaza. Faculty of Engineering Islamic University of Gaza Faculty of Engineering Computer Engineering Dept. Database Lab (ECOM 4113) Lab 9 Misc. Triggers Views Roles Sequences - Synonyms Eng. Mohammed Alokshiya December 7, 2014 Views

More information

Série n 6 Bis : Ateliers SQL Data Modeler (Oracle)

Série n 6 Bis : Ateliers SQL Data Modeler (Oracle) Série n 6 Bis : Ateliers SQL Data Modeler (Oracle) Getting started with data Modeler Adding a Table to An Existing Database Purpose This tutorial shows you how to add a table to an existing database using

More information

Institute of Aga. Network Database LECTURER NIYAZ M. SALIH

Institute of Aga. Network Database LECTURER NIYAZ M. SALIH 2017 Institute of Aga Network Database LECTURER NIYAZ M. SALIH Database: A Database is a collection of related data organized in a way that data can be easily accessed, managed and updated. Any piece of

More information

Manipulating Data. Copyright 2004, Oracle. All rights reserved.

Manipulating Data. Copyright 2004, Oracle. All rights reserved. Manipulating Data Copyright 2004, Oracle. All rights reserved. Objectives After completing this lesson, you should be able to do the following: Describe each data manipulation language (DML) statement

More information

SQL Retrieving Data from Multiple Tables

SQL Retrieving Data from Multiple Tables The Islamic University of Gaza Faculty of Engineering Dept. of Computer Engineering Database Lab (ECOM 4113) Lab 5 SQL Retrieving Data from Multiple Tables Eng. Ibraheem Lubbad An SQL JOIN clause is used

More information

Introduction to Oracle9i: SQL

Introduction to Oracle9i: SQL Oracle 1z0-007 Introduction to Oracle9i: SQL Version: 22.0 QUESTION NO: 1 Oracle 1z0-007 Exam Examine the data in the EMPLOYEES and DEPARTMENTS tables. You want to retrieve all employees, whether or not

More information

Institute of Aga. Microsoft SQL Server LECTURER NIYAZ M. SALIH

Institute of Aga. Microsoft SQL Server LECTURER NIYAZ M. SALIH Institute of Aga 2018 Microsoft SQL Server LECTURER NIYAZ M. SALIH Database: A Database is a collection of related data organized in a way that data can be easily accessed, managed and updated. Any piece

More information

Database Programming with SQL

Database Programming with SQL Database Programming with SQL 7-2 Objectives In this lesson, you will learn to: Construct and execute a SELECT statement to access data from more than one table using a nonequijoin Create and execute a

More information

DEFAULT Values, MERGE, and Multi-Table Inserts. Copyright 2009, Oracle. All rights reserved.

DEFAULT Values, MERGE, and Multi-Table Inserts. Copyright 2009, Oracle. All rights reserved. DEFAULT Values, MERGE, and Multi-Table Inserts What Will I Learn? In this lesson, you will learn to: Understand when to specify a DEFAULT value Construct and execute a MERGE statement Construct and execute

More information

Bsc (Hons) Software Engineering. Examinations for / Semester 1. Resit Examinations for BSE/15A/FT & BSE/16A/FT

Bsc (Hons) Software Engineering. Examinations for / Semester 1. Resit Examinations for BSE/15A/FT & BSE/16A/FT Bsc (Hons) Software Engineering Cohort: BSE/16B/FT Examinations for 2017-2018 / Semester 1 Resit Examinations for BSE/15A/FT & BSE/16A/FT MODULE: DATABASE APPLICATION DEVELOPMENT MODULE CODE: DBT2113C

More information

CBO SQL TRANSFORMER Document describes a few examples of transformations made by CBO.

CBO SQL TRANSFORMER Document describes a few examples of transformations made by CBO. 2013 CBO SQL TRANSFORMER Document describes a few examples of transformations made by CBO. Environment description OS - Oracle Linux Server release 6.3 x64 Database Oracle Database 11.2.0.3 EE with sample

More information

Aggregate Functions. Eng. Mohammed Alokshiya. Islamic University of Gaza. Faculty of Engineering. Computer Engineering Dept. Database Lab (ECOM 4113)

Aggregate Functions. Eng. Mohammed Alokshiya. Islamic University of Gaza. Faculty of Engineering. Computer Engineering Dept. Database Lab (ECOM 4113) Islamic University of Gaza Faculty of Engineering Computer Engineering Dept. Database Lab (ECOM 4113) Lab 4 Aggregate Functions Eng. Mohammed Alokshiya October 26, 2014 Unlike single-row functions, group

More information

LECTURE10: DATA MANIPULATION IN SQL, ADVANCED SQL QUERIES

LECTURE10: DATA MANIPULATION IN SQL, ADVANCED SQL QUERIES LECTURE10: DATA MANIPULATION IN SQL, ADVANCED SQL QUERIES Ref. Chapter5 From Database Systems: A Practical Approach to Design, Implementation and Management. Thomas Connolly, Carolyn Begg. 1 IS220: D a

More information

Retrieving Data Using the SQL SELECT Statement. Copyright 2004, Oracle. All rights reserved.

Retrieving Data Using the SQL SELECT Statement. Copyright 2004, Oracle. All rights reserved. Retrieving Data Using the SQL SELECT Statement Copyright 2004, Oracle. All rights reserved. Objectives After completing this lesson, you should be able to do the following: List the capabilities of SQL

More information

Database Programming - Section 3. Instructor Guide

Database Programming - Section 3. Instructor Guide Database Programming - Section 3 Instructor Guide Table of Contents...1 Lesson 1 - Destinations: What's in My Future?...1 What Will I Learn?...3 Why Learn It?...4 Tell Me / Show Me...5 Try It / Solve

More information

MANAGING DATA(BASES) USING SQL (NON-PROCEDURAL SQL, X401.9)

MANAGING DATA(BASES) USING SQL (NON-PROCEDURAL SQL, X401.9) Technology & Information Management Instructor: Michael Kremer, Ph.D. Class 4 Professional Program: Data Administration and Management MANAGING DATA(BASES) USING SQL (NON-PROCEDURAL SQL, X401.9) AGENDA

More information

Database Programming with PL/SQL

Database Programming with PL/SQL Database Programming with PL/SQL Review of SQL Joins 1 Copyright 2013, Oracle and/or its affiliates. All rights Objectives In this lesson, you will review how to construct and execute SELECT statements:

More information

Creating Other Schema Objects. Copyright 2004, Oracle. All rights reserved.

Creating Other Schema Objects. Copyright 2004, Oracle. All rights reserved. Creating Other Schema Objects Copyright 2004, Oracle. All rights reserved. Objectives After completing this lesson, you should be able to do the following: Create simple and complex views Retrieve data

More information

Lecture10: Data Manipulation in SQL, Advanced SQL queries

Lecture10: Data Manipulation in SQL, Advanced SQL queries IS220 / IS422 : Database Fundamentals : Data Manipulation in SQL, Advanced SQL queries Ref. Chapter5 Prepared by L. Nouf Almujally & Aisha AlArfaj College of Computer and Information Sciences - Information

More information

Introduction to Oracle9i: SQL

Introduction to Oracle9i: SQL Introduction to Oracle9i: SQL Additional Practices Volume 3 40049GC11 Production 1.1 October 2001 D33992 Authors Nancy Greenberg Priya Nathan Technical Contributors and Reviewers Josephine Turner Martin

More information

Exam: 1Z Title : Introduction to Oracle9i: SQL. Ver :

Exam: 1Z Title : Introduction to Oracle9i: SQL. Ver : Exam: 1Z0-007 Title : Introduction to Oracle9i: SQL Ver : 05.14.04 QUESTION 1 A: This query uses "+" to create outer join as it was in Oracle8i, but it requires also usage of WHERE clause in SELECT statement.b:

More information

Database Programming with SQL

Database Programming with SQL Database Programming with SQL 6-4 Objectives This lesson covers the following objectives: Construct and execute a SELECT statement to join a table to itself using a self-join Interpret the concept of a

More information

Tables From Existing Tables

Tables From Existing Tables Creating Tables From Existing Tables After completing this module, you will be able to: Create a clone of an existing table. Create a new table from many tables using a SQL SELECT. Define your own table

More information

A subquery is a nested query inserted inside a large query Generally occurs with select, from, where Also known as inner query or inner select,

A subquery is a nested query inserted inside a large query Generally occurs with select, from, where Also known as inner query or inner select, Sub queries A subquery is a nested query inserted inside a large query Generally occurs with select, from, where Also known as inner query or inner select, Result of the inner query is passed to the main

More information

Data Manipulation Language

Data Manipulation Language Manipulating Data Objectives After completing this lesson, you should be able to do the following: Describe each data manipulation language (DML) statement Insert rows into a table Update rows in a table

More information

1Z0-007 ineroduction to oracle9l:sql

1Z0-007 ineroduction to oracle9l:sql ineroduction to oracle9l:sql Q&A DEMO Version Copyright (c) 2007 Chinatag LLC. All rights reserved. Important Note Please Read Carefully For demonstration purpose only, this free version Chinatag study

More information

INDEX. 1 Basic SQL Statements. 2 Restricting and Sorting Data. 3 Single Row Functions. 4 Displaying data from multiple tables

INDEX. 1 Basic SQL Statements. 2 Restricting and Sorting Data. 3 Single Row Functions. 4 Displaying data from multiple tables INDEX Exercise No Title 1 Basic SQL Statements 2 Restricting and Sorting Data 3 Single Row Functions 4 Displaying data from multiple tables 5 Creating and Managing Tables 6 Including Constraints 7 Manipulating

More information

Retrieving Data Using the SQL SELECT Statement. Copyright 2009, Oracle. All rights reserved.

Retrieving Data Using the SQL SELECT Statement. Copyright 2009, Oracle. All rights reserved. Retrieving Data Using the SQL SELECT Statement 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

More information

Database Programming - Section 7. Instructor Guide

Database Programming - Section 7. Instructor Guide Database Programming - Section 7 Instructor Guide Table of Contents...1 Lesson 1 - Multiple-Row Subqueries...1 What Will I Learn?...3 Why Learn It?...4...5 Try It / Solve It...12 Lesson 2 - Practice Exercises

More information

BackLogic Quick-Start Tutorial

BackLogic Quick-Start Tutorial BackLogic Quick-Start Tutorial This quick-start tutorial includes step-by-step instructions on Setting up BackLogic Writing service procedures Publishing service procedures, and Testing service procedures

More information

Táblák tartalmának módosítása. Copyright 2004, Oracle. All rights reserved.

Táblák tartalmának módosítása. Copyright 2004, Oracle. All rights reserved. Táblák tartalmának módosítása Copyright 2004, Oracle. All rights reserved. Objectives After completing this lesson, you should be able to do the following: Describe each data manipulation language (DML)

More information

Introduction to Explicit Cursors. Copyright 2008, Oracle. All rights reserved.

Introduction to Explicit Cursors. Copyright 2008, Oracle. All rights reserved. Introduction to Explicit Cursors Introduction to Explicit Cursors 2 What Will I Learn? In this lesson, you will learn to: Distinguish between an implicit and an explicit cursor Describe why and when to

More information

MANAGING DATA(BASES) USING SQL (NON-PROCEDURAL SQL, X401.9)

MANAGING DATA(BASES) USING SQL (NON-PROCEDURAL SQL, X401.9) Technology & Information Management Instructor: Michael Kremer, Ph.D. Class 6 Professional Program: Data Administration and Management MANAGING DATA(BASES) USING SQL (NON-PROCEDURAL SQL, X401.9) AGENDA

More information

RETRIEVING DATA USING THE SQL SELECT STATEMENT

RETRIEVING DATA USING THE SQL SELECT STATEMENT RETRIEVING DATA USING THE SQL SELECT STATEMENT Course Objectives List the capabilities of SQL SELECT statements Execute a basic SELECT statement Development Environments for SQL Lesson Agenda Basic SELECT

More information

CREATE TABLE COUNTRIES (COUNTRY_ID CHAR(2), COUNTRY_NAME VARCHAR2(40), REGION_ID NUMBER(4)); INSERT INTO COUNTRIES VALUES ('CA','Canada',2); INSERT INTO COUNTRIES VALUES ('DE','Germany',1); INSERT INTO

More information

Database Programming with SQL

Database Programming with SQL Database Programming with SQL 2-1 Objectives This lesson covers the following objectives: Apply the concatenation operator to link columns to other columns, arithmetic expressions, or constant values to

More information

Joining tables. Jaroslav Porubän, Miroslav Biňas, Milan Nosáľ (c)

Joining tables. Jaroslav Porubän, Miroslav Biňas, Milan Nosáľ (c) Joining tables Jaroslav Porubän, Miroslav Biňas, Milan Nosáľ (c) 2011-2016 Introduction Normalization process tears the database into multiple tables related using foreign keys SQL provides means to join

More information

Database Programming with PL/SQL

Database Programming with PL/SQL Database Programming with PL/SQL 5-4 Objectives This lesson covers the following objectives: List the benefits of using parameters with cursors Create PL/SQL code to declare and use a cursor with a parameter

More information

Retrieving Data Using the SQL SELECT Statement. Copyright 2004, Oracle. All rights reserved.

Retrieving Data Using the SQL SELECT Statement. Copyright 2004, Oracle. All rights reserved. Retrieving Data Using the SQL SELECT Statement 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

More information

2. What privilege should a user be given to create tables? The CREATE TABLE privilege

2. What privilege should a user be given to create tables? The CREATE TABLE privilege Practice 1: Solutions To complete question 6 and the subsequent questions, you need to connect to the database using isql*plus. To do this, launch the Internet Explorer browser from the desktop of your

More information

Limit Rows Selected. Copyright 2008, Oracle. All rights reserved.

Limit Rows Selected. Copyright 2008, Oracle. All rights reserved. What Will I Learn? In this lesson, you will learn to: Apply SQL syntax to restrict the rows returned from a query Demonstrate application of the WHERE clause syntax Explain why it is important, from a

More information

Updating Column Values and Deleting Rows. Copyright 2008, Oracle. All rights reserved.

Updating Column Values and Deleting Rows. Copyright 2008, Oracle. All rights reserved. Updating Column Values and Deleting Rows What Will I Learn? In this lesson, you will learn to: Construct and execute an UPDATE statement Construct and execute a DELETE statement Construct and execute a

More information

Who is the borrower whose id is 12345? σ borrower borrower_id = select * from borrower where borrower_id = '12345'

Who is the borrower whose id is 12345? σ borrower borrower_id = select * from borrower where borrower_id = '12345' Who is the borrower whose id is 12345? σ borrower borrower_id = 12345 select * from borrower where borrower_id = '12345' List the names of all borrowers π borrower last_name first_name select last_name,

More information

DUE: 9. Create a query that will return the average order total for all Global Fast Foods orders from January 1, 2002, to December 21, 2002.

DUE: 9. Create a query that will return the average order total for all Global Fast Foods orders from January 1, 2002, to December 21, 2002. CIS 207 Oracle - Database Programming and SQL HOMEWORK: # 10 DUE: Run the following queries in Oracle Application Express. Paste a copy of each query Into this word document below the questions or notepad.txt

More information

Oracle Database 10g: SQL Fundamentals II

Oracle Database 10g: SQL Fundamentals II D17111GC30 Edition 3.0 January 2009 D57874 Oracle Database 10g: SQL Fundamentals II Student Guide Volume 2 Authors Salome Clement Chaitanya Koratamaddi Priya Vennapusa Technical Contributors and Reviewers

More information

Chapter 4 How to retrieve data from two tables

Chapter 4 How to retrieve data from two tables Chapter 4 How to retrieve data from two tables PL/SQL, C4 2008, Mike Murach & Associates, Inc. Slide 1 Objectives Applied Use the explicit syntax to code an inner join that returns data from a single table

More information

Set theory is a branch of mathematics that studies sets. Sets are a collection of objects.

Set theory is a branch of mathematics that studies sets. Sets are a collection of objects. Set Theory Set theory is a branch of mathematics that studies sets. Sets are a collection of objects. Often, all members of a set have similar properties, such as odd numbers less than 10 or students in

More information

Database Programming - Section 11. Instructor Guide

Database Programming - Section 11. Instructor Guide Database Programming - Section 11 Instructor Guide Table of Contents...1 Lesson 1 - In-Class Interview...1 What Will I Learn?...3 Why Learn It?...4...5 Try It / Solve It...9 Lesson 2 - Creating Views...12

More information

Advance Database Systems. Joining Concepts in Advanced SQL Lecture# 4

Advance Database Systems. Joining Concepts in Advanced SQL Lecture# 4 Advance Database Systems Joining Concepts in Advanced SQL Lecture# 4 Lecture 4: Joining Concepts in Advanced SQL Join Cross Join Inner Join Outer Join 3 Join 4 Join A SQL join clause combines records from

More information

Database Programming with SQL

Database Programming with SQL Database Programming with SQL 6-2 Objectives This lesson covers the following objectives: Construct and execute a join with the ANSI-99 USING Clause Construct and execute a join with the ANSI-99 ON Clause

More information

Querying Data with Transact SQL

Querying Data with Transact SQL Course 20761A: Querying Data with Transact SQL Course details Course Outline Module 1: Introduction to Microsoft SQL Server 2016 This module introduces SQL Server, the versions of SQL Server, including

More information

Vendor: Oracle. Exam Code: 1Z Exam Name: Oracle Database: SQL Fundamentals I. Q&As: 292

Vendor: Oracle. Exam Code: 1Z Exam Name: Oracle Database: SQL Fundamentals I. Q&As: 292 Vendor: Oracle Exam Code: 1Z1-051 Exam Name: Oracle Database: SQL Fundamentals I Q&As: 292 QUESTION 1 Evaluate the SQL statement: TRUNCATE TABLE DEPT; Which three are true about the SQL statement? (Choose

More information

SELF TEST. List the Capabilities of SQL SELECT Statements

SELF TEST. List the Capabilities of SQL SELECT Statements 98 SELF TEST The following questions will help you measure your understanding of the material presented in this chapter. Read all the choices carefully because there might be more than one correct answer.

More information

Database Management Systems,

Database Management Systems, Database Management Systems SQL Query Language (3) 1 Topics Aggregate Functions in Queries count sum max min avg Group by queries Set Operations in SQL Queries Views 2 Aggregate Functions Tables are collections

More information

CS 275 Winter 2011 Problem Set 3

CS 275 Winter 2011 Problem Set 3 CS 275 Winter 2011 Problem Set 3 Run the following quires in Oracle Application Express where appropriate. Cut and paste your query for each applicable question. For short answer or multiple choice type

More information

Database Management Systems,

Database Management Systems, Database Management Systems SQL Query Language (2) 1 Topics Update Query Delete Query Integrity Constraint Cascade Deletes Deleting a Table Join in Queries Table variables More Options in Select Queries

More information

Assignment Grading Rubric

Assignment Grading Rubric Final Project Outcomes addressed in this activity: Overview and Directions: 1. Create a new Empty Database called Final 2. CREATE TABLES The create table statements should work without errors, have the

More information

20 Essential Oracle SQL and PL/SQL Tuning Tips. John Mullins

20 Essential Oracle SQL and PL/SQL Tuning Tips. John Mullins 20 Essential Oracle SQL and PL/SQL Tuning Tips John Mullins jmullins@themisinc.com www.themisinc.com www.themisinc.com/webinars Presenter John Mullins Themis Inc. (jmullins@themisinc.com) 30+ years of

More information

CIS 363 MySQL. Chapter 12 Joins Chapter 13 Subqueries

CIS 363 MySQL. Chapter 12 Joins Chapter 13 Subqueries CIS 363 MySQL Chapter 12 Joins Chapter 13 Subqueries Ch.12 Joins TABLE JOINS: Involve access data from two or more tables in a single query. The ability to join two or more tables together is called a

More information

RDBMS- Day 4. Grouped results Relational algebra Joins Sub queries. In today s session we will discuss about the concept of sub queries.

RDBMS- Day 4. Grouped results Relational algebra Joins Sub queries. In today s session we will discuss about the concept of sub queries. RDBMS- Day 4 Grouped results Relational algebra Joins Sub queries In today s session we will discuss about the concept of sub queries. Grouped results SQL - Using GROUP BY Related rows can be grouped together

More information

Oracle 1Z Oracle Database 11g : SQL Fundamentals I. Download Full Version :

Oracle 1Z Oracle Database 11g : SQL Fundamentals I. Download Full Version : Oracle 1Z0-051 Oracle Database 11g : SQL Fundamentals I Download Full Version : http://killexams.com/pass4sure/exam-detail/1z0-051 Answer: D QUESTION: 183 View the Exhibits and examine the structures of

More information

Data Manipulation Language (DML)

Data Manipulation Language (DML) In the name of Allah Islamic University of Gaza Faculty of Engineering Computer Engineering Department ECOM 4113 DataBase Lab Lab # 3 Data Manipulation Language (DML) El-masry 2013 Objective To be familiar

More information

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

Objectives. After completing this lesson, you should be able to do the following: Objectives After completing this lesson, you should be able to do the following: Describe the types of problems that subqueries can solve Define subqueries List the types of subqueries Write single-row

More information

Database Foundations. 6-3 Data Definition Language (DDL) Copyright 2015, Oracle and/or its affiliates. All rights reserved.

Database Foundations. 6-3 Data Definition Language (DDL) Copyright 2015, Oracle and/or its affiliates. All rights reserved. Database Foundations 6-3 Roadmap You are here Introduction to Oracle Application Express Structured Query Language (SQL) Data Definition Language (DDL) Data Manipulation Language (DML) Transaction Control

More information

Reference: W3School -

Reference: W3School - Language SQL SQL Adv Reference: W3School - http://www.w3schools.com/sql/default.asp http://www.tomjewett.com/dbdesign/dbdesign.php?page=recursive.php Recursive Associations/Relationship A recursive association

More information

Pragmatic Approach to Query Optimization

Pragmatic Approach to Query Optimization Pragmatic Approach to Query Optimization Subhi H. Hamdoon, PhD. College of Applied Sciences, Ministry of Higher Education, Oman Virendra Gawande, PhD. College of Applied Sciences, Ministry of Higher Education,

More information

More SQL: Complex Queries, Triggers, Views, and Schema Modification

More SQL: Complex Queries, Triggers, Views, and Schema Modification Chapter 5 More SQL: Complex Queries, Triggers, Views, and Schema Modification Copyright 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 5 Outline More Complex SQL Retrieval Queries

More information

Exam Code: 1z Exam Name: Ineroduction to oracle9l:sql. Vendor: Oracle. Version: DEMO

Exam Code: 1z Exam Name: Ineroduction to oracle9l:sql. Vendor: Oracle. Version: DEMO Exam Code: 1z0-007 Exam Name: Ineroduction to oracle9l:sql Vendor: Oracle Version: DEMO Part: A 1: Examine the structure of the EMPLOYEES table: EMPLOYEE_ID NUMBER Primary Key FIRST_NAME VARCHAR2(25) LAST_NAME

More information

GIFT Department of Computing Science Data Selection and Filtering using the SELECT Statement

GIFT Department of Computing Science Data Selection and Filtering using the SELECT Statement GIFT Department of Computing Science [Spring 2013] CS-217: Database Systems Lab-2 Manual Data Selection and Filtering using the SELECT Statement V1.0 4/12/2016 Introduction to Lab-2 This lab reinforces

More information

Fravo.com. Certification Made Easy. World No1 Cert Guides. Introduction to Oracle9i: SQL Exam 1Z Edition 1.0

Fravo.com. Certification Made Easy. World No1 Cert Guides. Introduction to Oracle9i: SQL Exam 1Z Edition 1.0 Fravo.com Certification Made Easy M C S E, C C N A, C C N P, O C P, C I W, J A V A, S u n S o l a r i s, C h e c k p o i n t World No1 Cert Guides info@fravo.com Introduction to Oracle9i: SQL Exam 1Z0-007

More information

Database Programming with PL/SQL

Database Programming with PL/SQL Database Programming with PL/SQL 5-3 Objectives This lesson covers the following objectives: List and explain the benefits of using cursor FOR loops Create PL/SQL code to declare a cursor and manipulate

More information

Database Programming with PL/SQL

Database Programming with PL/SQL Database Programming with PL/SQL Cursor FOR Loops 1 Copyright 2013, Oracle and/or its affiliates. All rights Objectives This lesson covers the following objectives: List and explain the benefits of using

More information

Exam : 1Z Title : Introduction to Oracle9i: SQL

Exam : 1Z Title : Introduction to Oracle9i: SQL Exam : 1Z0-007 Title : Introduction to Oracle9i: SQL Ver : 01-15-2009 QUESTION 1: Examine the data in the EMPLOYEES and DEPARTMENTS tables. EMPLOYEES LAST_NAME DEPARTMENT_ID SALARY Getz 10 3000 Davis 20

More information

Three types of sub queries are supported in SQL are Scalar, Row and Table sub queries.

Three types of sub queries are supported in SQL are Scalar, Row and Table sub queries. SQL Sub-Queries What are Sub queries? SQL Sub queries are the queries which are embedded inside another query. The embedded queries are called as INNER query & container query is called as OUTER query.

More information

Subquery: There are basically three types of subqueries are:

Subquery: There are basically three types of subqueries are: Subquery: It is also known as Nested query. Sub queries are queries nested inside other queries, marked off with parentheses, and sometimes referred to as "inner" queries within "outer" queries. Subquery

More information

Database Systems: Design, Implementation, and Management Tenth Edition. Chapter 8 Advanced SQL

Database Systems: Design, Implementation, and Management Tenth Edition. Chapter 8 Advanced SQL Database Systems: Design, Implementation, and Management Tenth Edition Chapter 8 Advanced SQL Objectives In this chapter, you will learn: How to use the advanced SQL JOIN operator syntax About the different

More information

Oracle Database 11g: SQL Fundamentals I

Oracle Database 11g: SQL Fundamentals I Oracle Database 11g: SQL Fundamentals I Volume II Student Guide D49996GC20 Edition 2.0 October 2009 D63148 Authors Salome Clement Brian Pottle Puja Singh Technical Contributors and Reviewers Anjulaponni

More information

chapter 2 G ETTING I NFORMATION FROM A TABLE

chapter 2 G ETTING I NFORMATION FROM A TABLE chapter 2 Chapter G ETTING I NFORMATION FROM A TABLE This chapter explains the basic technique for getting the information you want from a table when you do not want to make any changes to the data and

More information