Pivot Tables Motivation (1)

Size: px
Start display at page:

Download "Pivot Tables Motivation (1)"

Transcription

1 Pivot Tables The Pivot relational operator (available in some SQL platforms/servers) allows us to write cross-tabulation queries from tuples in tabular layout. It takes data in separate rows, aggregates it and convert it into columns. 1

2 Pivot Tables Motivation (1) Considering table customers as: Cust_id Cust_name State_code Times_purchased 1 John CT 1 2 Mary NY 10 3 Alfredo NJ 2 4 Ana NY If we want to know how many customers bought someting once, twice, thrice and so on, from each state, a regular SQL to satisfy that query would be, select state_code, times_purchased, count(*) cnt from customers group by state_code, times_purchased; 2

3 Pivot Tables Motivation (2) Whose result would be: State_code Times_purchased cnt CT 0 90 CT CT NY This is the information we need but it is a little hard to read. A crosstab where we could organize the data vertically and states horizontally would be preferable: Times_purchased CT NY NJ

4 Pivot Tables: another example The following tuples: order_id customer_ref product_id SMITH SMITH ANDERSON ANDERSON JONES JONES SMITH SMITH SMITH 20 Can be shown as: customer_ref ANDERSON JONES SMITH

5 PIVOT clause syntax (1) SELECT * FROM ( SELECT column1,, columnj FROM tables WHERE conditions ) PIVOT ( aggregate_function(columnj) FOR columnj IN ( expr1, expr2,... expr_n) subquery ) ORDER BY expression [ ASC DESC ]; 5

6 PIVOT clause syntax (2) Where: aggregate_function can be a function such as SUM, COUNT, MIN, MAX or AVG IN ( expr1, expr2,... expr_n ) is a list of values for columnj to pivot into headings in the cross-tabulation query. Each distinct value will be shown as a separate column subquery can be used instead of a list of values. 6

7 PIVOT clause Application (1) select * from ( select times_purchased times, state_code from customers t ) pivot ( count(state_code) for state_code in ('NY','CT','NJ','FL','MO') ) order by times_purchased times NY CT NJ FL MO

8 Searching with PIVOT clause (1) EMP table EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO 7839 KING PRESIDENT 17-NOV BLAKE MANAGER MAY CLARK MANAGER JUN JONES MANAGER APR Question: For each job, display the salary totals in a separate column for each department. 8

9 Searching with PIVOT clause (2) WITH pivot_data AS (SELECT deptno, job, sal from EMP) select * from pivot_data PIVOT ( SUM(sal) for deptno in (10, 20, 30, 40) ); JOB CLERK SALESMAN 6160 PRESIDENT 5500 MANAGERT ANALYST 6600 The list of values in deptno was hard-coded in this example (10, 20, 30, 40) 9

10 Searching with PIVOT clause (2) Alternatively, an inline-view may be used to obtain the same result: select * from (SELECT deptno, job, sal from EMP) PIVOT ( SUM(sal) for deptno in (10, 20, 30, 40)); JOB CLERK SALESMAN 6160 PRESIDENT 5500 MANAGER ANALYST

11 Searching with PIVOT clause (3) Groupings will be affected if pivot queries are performed on a larger set of columns. Ex: SELECT * from EMP PIVOT ( SUM(sal) for deptno in (10, 20, 30, 40)); Here, deptno is still the pivot column but the large group of columns Including a superkey of EMP cause the effective useless of the pivot (results in the next slide). 11

12 Searching with PIVOT clause (4) EMPNO ENAME JOB MGR HIREDATE COMM MARTIN SALESMAN /09/ BLAKE MANAGER /05/ MILLER CLERK /01/ WARD SALESMAN /02/ JONES MANAGER /04/ TURNER SALESMAN /09/ JAMES CLERK /12/ KING PRESIDENT 19/04/ ADAMS CLERK /05/ FORD ANALYST /12/

13 Searching with PIVOT clause (5) Question: For ANALYST, CLERK and SALESMAN, display the salary totals in a separate column for each department. WITH pivot_data AS (SELECT deptno, job, sal from EMP) select * from pivot_data PIVOT ( SUM(sal) for deptno in (10, 20, 30, 40)) where job in ( ANALYST, CLERK, SALESMAN ); JOB CLERK SALESMAN 6160 ANALYST

14 Searching with PIVOT clause (6) Aliases can be used: WITH pivot_data AS (SELECT deptno, job, sal from EMP) select * from pivot_data PIVOT ( SUM(sal) as salaries for deptno in (10 as Dep10, 20 as Dep20, 30 as Dep30, 40 AS Dep40)) where job in ( ANALYST, CLERK, SALESMAN ); JOB Dep10_salaries Dep20_salaries Dep30_salaries Dep40_salaries CLERK SALESMAN 6160 ANALYST

15 Searching with PIVOT clause (7) Pivoting multiple columns: WITH pivot_data AS (SELECT deptno, job, sal from EMP) select * from pivot_data PIVOT ( SUM(sal) as sum, count(sal) as cnt for deptno in (10 as D10, 20 as D20, 30 as D30)); JOB D10_sum D10_cnt... D30_sum D30_cnt CLERK SALESMAN PRESIDENT MANAGER ANALYST

16 Or: Searching with PIVOT clause (8) WITH pivot_data AS (SELECT deptno, job, sal from EMP) select * from pivot_data PIVOT ( SUM(sal) as sum, count(sal) as cnt for (deptno, job) in ((30, 'SALESMAN') as d30_sls, (30, 'MANAGER') as d30_mgr, (30, 'CLERK') AS d30_clk)); D30_SLS_SUM D30_SLS_CNT D30_MGR_SUM D30_MGR_CNT

17 PIVOTing an Unknown Domain of Values (1) By default, the pivot syntax does not support a dynamic list of values in the pivot_in_clause. A subquery instead of a hardcode list of values used in the pivot_in_clause will generate an error: SELECT * FROM emp PIVOT (SUM(sal) AS salaries FOR deptno IN (SELECT deptno FROM dept)); 17

18 PIVOTing an Unknown Domain of Values (2) A possible workaround to solve this problem: (with Oracle) select * from (SELECT deptno, job, sal from EMP) PIVOT XML ( SUM(sal) for deptno in (any)); JOB DEPTNO_XML ANALYST <PivotSet><item><column name = "DEPTNO">20</column><column name = "SUM(SAL) ">6600</column></item></PivotSet> MANAGER It implies extra work to read the information from the XML format! 18

19 PIVOTing an Unknown Domain of Values (3) Another workaround to solve the problem (with Oracle SQLplus): column namelist new_value nlist noprint; /* first obtain a string with the list of distinct values of deptno select wm_concat('''' deptno '''') namelist from (select distinct deptno from emp) connect by nocycle deptno = prior deptno group by level; WITH pivot_data AS (SELECT deptno, job, sal from EMP) select * from pivot_data PIVOT ( SUM(sal) for deptno in (&nlist)); /* &nlist is a variable containing the string '10','20','30 (results in the next slide). */ 19

20 PIVOTing an Unknown Domain of Values (4) JOB CLERK SALESMAN 6160 PRESIDENT 5500 MANAGER ANALYST

21 UnPIVOT turning pivot tables into rows (1) SELECT... FROM... UNPIVOT [INCLUDE EXCLUDE NULLS] ( unpivot_clause unpivot_for_clause unpivot_in_clause ) WHERE... unpivot clause: specifies a name for a column to represent the unpivoted measure values. unpivot_for_clause: specifies the name for the column that will result from our unpivot query. unpivot_for_clause: this contains the list of pivoted columns (not values) to be unpivoted 21

22 UnPIVOT turning pivot tables into rows (2) CREATE VIEW pivoted_data as SELECT * FROM pivot_data PIVOT (SUM(sal) FOR deptno IN (10 AS d10_sal, 20 as d20_sal, 30 as d30_sal, 40 AS d40_sal)); select * from pivoted_data; JOB D10_sal D20_sal D30_sal D40_sal CLERK SALESMAN 6160 PRESIDENT 5500 MANAGERT ANALYST

23 UnPIVOT turning pivot tables into rows (3) SELECT * FROM pivoted_data UNPIVOT ( Deptsal FOR saldesc IN (d10_sal, d20_sal, d30_sal, d40_sal) ); JOB SALDESC DEPTSAL CLERK D10_SAL 1430 CLERK D20_SAL 2090 CLERK D30_SAL 1045 SALESMAN D30_SAL 6160 PRESIDENT D10_SAL 5500 MANAGER D10_SAL 2695 MANAGER D20_SAL MANAGER D30_SAL 3135 ANALYST D20_SAL

24 UnPIVOT other uses (1) Since columns in the unpivot_in_clause must all be of the same datatype, this would cause an error: SELECT empno, job, unpivot_col_name, unpivot_col_value FROM emp UNPIVOT (unpivot_col_value FOR unpivot_col_name IN (ename, deptno, hiredate)); 24

25 UnPIVOT other uses (2) A workaround (in oracle) consists on datatype conversion: WITH emp_data AS ( SELECT empno, job, ename, TO_CHAR(deptno) as deptno, TO_CHAR(hiredate) as hiredate FROM emp) SELECT empno, job, unpivot_col_name, unpivot_col_value FROM emp_data UNPIVOT (unpivot_col_value FOR unpivot_col_name IN (ename, deptno, hiredate)); (results in the next page) 25

26 UnPIVOT other uses (3) EMPNO JOB UNPIVOT_COL_NAME UNPIVOT_COL_VALUE 7369 CLERK ENAME SMITH 7369 CLERK DEPTNO CLERK HIREDATE 17/12/ SALESMAN ENAME ALLEN 7499 SALESMAN DEPTNO SALESMAN HIREDATE 20/02/

CS2 Current Technologies Lecture 2: SQL Programming Basics

CS2 Current Technologies Lecture 2: SQL Programming Basics T E H U N I V E R S I T Y O H F R G E D I N B U CS2 Current Technologies Lecture 2: SQL Programming Basics Dr Chris Walton (cdw@dcs.ed.ac.uk) 4 February 2002 The SQL Language 1 Structured Query Language

More information

Real-World Performance Training SQL Introduction

Real-World Performance Training SQL Introduction Real-World Performance Training SQL Introduction Real-World Performance Team Basics SQL Structured Query Language Declarative You express what you want to do, not how to do it Despite the name, provides

More information

CS2 Current Technologies Lecture 3: SQL - Joins and Subqueries

CS2 Current Technologies Lecture 3: SQL - Joins and Subqueries T E H U N I V E R S I T Y O H F R G E D I N B U CS2 Current Technologies Lecture 3: SQL - Joins and Subqueries Chris Walton (cdw@dcs.ed.ac.uk) 11 February 2002 Multiple Tables 1 Redundancy requires excess

More information

Programming Languages

Programming Languages Programming Languages Chapter 19 - Continuations Dr. Philip Cannata 1 Exceptions (define (f n) (let/cc esc (/ 1 (if (zero? n) (esc 1) n)))) > (f 0) 1 > (f 2) 1/2 > (f 1) 1 > Dr. Philip Cannata 2 Exceptions

More information

CS2 Current Technologies Note 1 CS2Bh

CS2 Current Technologies Note 1 CS2Bh CS2 Current Technologies Note 1 Relational Database Systems Introduction When we wish to extract information from a database, we communicate with the Database Management System (DBMS) using a query language

More information

King Fahd University of Petroleum and Minerals

King Fahd University of Petroleum and Minerals 1 King Fahd University of Petroleum and Minerals Information and Computer Science Department ICS 334: Database Systems Semester 041 Major Exam 1 18% ID: Name: Section: Grades Section Max Scored A 5 B 25

More information

Database implementation Further SQL

Database implementation Further SQL IRU SEMESTER 2 January 2010 Semester 1 Session 2 Database implementation Further SQL Objectives To be able to use more advanced SQL statements, including Renaming columns Order by clause Aggregate functions

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

Part III. Data Modelling. Marc H. Scholl (DBIS, Uni KN) Information Management Winter 2007/08 1

Part III. Data Modelling. Marc H. Scholl (DBIS, Uni KN) Information Management Winter 2007/08 1 Part III Data Modelling Marc H. Scholl (DBIS, Uni KN) Information Management Winter 2007/08 1 Outline of this part (I) 1 Introduction to the Relational Model and SQL Relational Tables Simple Constraints

More information

Department of Computer Science and Information Systems, College of Business and Technology, Morehead State University

Department of Computer Science and Information Systems, College of Business and Technology, Morehead State University 1 Department of Computer Science and Information Systems, College of Business and Technology, Morehead State University Lecture 3 Part A CIS 311 Introduction to Management Information Systems (Spring 2017)

More information

Introduction. Introduction to Oracle: SQL and PL/SQL

Introduction. Introduction to Oracle: SQL and PL/SQL Introduction Introduction to Oracle: SQL and PL/SQL 1 Objectives After completing this lesson, you should be able to do the following: Discuss the theoretical and physical aspects of a relational database

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

Database Management System. * First install Mysql Database or Wamp Server which contains Mysql Databse.

Database Management System. * First install Mysql Database or Wamp Server which contains Mysql Databse. Database Management System * First install Mysql Database or Wamp Server which contains Mysql Databse. * Installation steps are provided in pdf named Installation Steps of MySQL.pdf or WAMP Server.pdf

More information

Table : Purchase. Field DataType Size Constraints CustID CHAR 5 Primary key CustName Varchar 30 ItemName Varchar 30 PurchaseDate Date

Table : Purchase. Field DataType Size Constraints CustID CHAR 5 Primary key CustName Varchar 30 ItemName Varchar 30 PurchaseDate Date Q1. Write SQL query for the following : (i) To create above table as per specification given (ii) To insert 02 records as per your choice (iii) Display the Item name, qty & s of all items purchased by

More information

1 SQL Structured Query Language

1 SQL Structured Query Language 1 SQL Structured Query Language 1.1 Tables In relational database systems (DBS) data are represented using tables (relations). A query issued against the DBS also results in a table. A table has the following

More information

1 SQL Structured Query Language

1 SQL Structured Query Language 1 SQL Structured Query Language 1.1 Tables In relational database systems (DBS) data are represented using tables (relations). A query issued against the DBS also results in a table. A table has the following

More information

Informatics Practices (065) Sample Question Paper 1 Section A

Informatics Practices (065) Sample Question Paper 1 Section A Informatics Practices (065) Sample Question Paper 1 Note 1. This question paper is divided into sections. Section A consists 30 marks. 3. Section B and Section C are of 0 marks each. Answer the questions

More information

SQL. Char (30) can store ram, ramji007 or 80- b

SQL. Char (30) can store ram, ramji007 or 80- b SQL In Relational database Model all the information is stored on Tables, these tables are divided into rows and columns. A collection on related tables are called DATABASE. A named table in a database

More information

RDBMS Using Oracle. BIT-4 Lecture Week 3. Lecture Overview

RDBMS Using Oracle. BIT-4 Lecture Week 3. Lecture Overview RDBMS Using Oracle BIT-4 Lecture Week 3 Lecture Overview Creating Tables, Valid and Invalid table names Copying data between tables Character and Varchar2 DataType Size Define Variables in SQL NVL and

More information

SQL Structured Query Language Introduction

SQL Structured Query Language Introduction SQL Structured Query Language Introduction Rifat Shahriyar Dept of CSE, BUET Tables In relational database systems data are represented using tables (relations). A query issued against the database also

More information

Based on the following Table(s), Write down the queries as indicated: 1. Write an SQL query to insert a new row in table Dept with values: 4, Prog, MO

Based on the following Table(s), Write down the queries as indicated: 1. Write an SQL query to insert a new row in table Dept with values: 4, Prog, MO Based on the following Table(s), Write down the queries as indicated: 1. Write an SQL query to insert a new row in table Dept with values: 4, Prog, MO INSERT INTO DEPT VALUES(4, 'Prog','MO'); The result

More information

NURSING_STAFF NNbr NName Grade

NURSING_STAFF NNbr NName Grade The SELECT command is used to indicate which information we need to obtain not how the information is to be processed. SQL is a non-procedural language. SELECT [DISTINCT ALL] {* [column_expression [AS

More information

Topic 8 Structured Query Language (SQL) : DML Part 2

Topic 8 Structured Query Language (SQL) : DML Part 2 FIT1004 Database Topic 8 Structured Query Language (SQL) : DML Part 2 Learning Objectives: Use SQL functions Manipulate sets of data Write subqueries Manipulate data in the database References: Rob, P.

More information

Copyright 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley. Slide 17-1

Copyright 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley. Slide 17-1 Slide 17-1 Chapter 17 Introduction to Transaction Processing Concepts and Theory Multi-user processing and concurrency Simultaneous processing on a single processor is an illusion. When several users are

More information

CS Reading Packet: "Views, and Simple Reports - Part 1"

CS Reading Packet: Views, and Simple Reports - Part 1 CS 325 - Reading Packet: "Views, and Simple Reports - Part 1" p. 1 Sources: CS 325 - Reading Packet: "Views, and Simple Reports - Part 1" * Oracle9i Programming: A Primer, Rajshekhar Sunderraman, Addison

More information

Introduc.on to Databases

Introduc.on to Databases Introduc.on to Databases G6921 and G6931 Web Technologies Dr. Séamus Lawless Housekeeping Course Structure 1) Intro to the Web 2) HTML 3) HTML and CSS Essay Informa.on Session 4) Intro to Databases 5)

More information

Creating and Managing Tables Schedule: Timing Topic

Creating and Managing Tables Schedule: Timing Topic 9 Creating and Managing Tables Schedule: Timing Topic 30 minutes Lecture 20 minutes Practice 50 minutes Total Objectives After completing this lesson, you should be able to do the following: Describe the

More information

CS Reading Packet: "Writing relational operations using SQL"

CS Reading Packet: Writing relational operations using SQL CS 325 - Reading Packet: "Writing relational operations using SQL" p. 1 CS 325 - Reading Packet: "Writing relational operations using SQL" Sources: Oracle9i Programming: A Primer, Rajshekhar Sunderraman,

More information

GIFT Department of Computing Science. CS-217: Database Systems. Lab-4 Manual. Reporting Aggregated Data using Group Functions

GIFT Department of Computing Science. CS-217: Database Systems. Lab-4 Manual. Reporting Aggregated Data using Group Functions GIFT Department of Computing Science CS-217: Database Systems Lab-4 Manual Reporting Aggregated Data using Group Functions V3.0 4/28/2016 Introduction to Lab-4 This lab further addresses functions. It

More information

Databases. Relational Model, Algebra and operations. How do we model and manipulate complex data structures inside a computer system? Until

Databases. Relational Model, Algebra and operations. How do we model and manipulate complex data structures inside a computer system? Until Databases Relational Model, Algebra and operations How do we model and manipulate complex data structures inside a computer system? Until 1970.. Many different views or ways of doing this Could use tree

More information

Querying Data with Transact-SQL

Querying Data with Transact-SQL Querying Data with Transact-SQL Course: 20761 Course Details Audience(s): IT Professional(s) Technology: Microsoft SQL Server 2016 Duration: 24 HRs. ABOUT THIS COURSE This course is designed to introduce

More information

Databases - 4. Other relational operations and DDL. How to write RA expressions for dummies

Databases - 4. Other relational operations and DDL. How to write RA expressions for dummies Databases - 4 Other relational operations and DDL How to write RA expressions for dummies Step 1: Identify the relations required and CP them together Step 2: Add required selections to make the CP Step

More information

Create Rank Transformation in Informatica with example

Create Rank Transformation in Informatica with example Create Rank Transformation in Informatica with example Rank Transformation in Informatica. Creating Rank Transformation in Inforamtica. Creating target definition using Target designer. Creating a Mapping

More information

ORACLE VIEWS ORACLE VIEWS. Techgoeasy.com

ORACLE VIEWS ORACLE VIEWS. Techgoeasy.com ORACLE VIEWS ORACLE VIEWS Techgoeasy.com 1 Oracle VIEWS WHAT IS ORACLE VIEWS? -A view is a representation of data from one or more tables or views. -A view is a named and validated SQL query which is stored

More information

THE INDIAN COMMUNITY SCHOOL, KUWAIT

THE INDIAN COMMUNITY SCHOOL, KUWAIT THE INDIAN COMMUNITY SCHOOL, KUWAIT SERIES : II MID TERM /FN/ 18-19 CODE : M 065 TIME ALLOWED : 2 HOURS NAME OF STUDENT : MAX. MARKS : 50 ROLL NO. :.. CLASS/SEC :.. NO. OF PAGES : 3 INFORMATICS PRACTICES

More information

Trigger is a stored procedure which is called implicitly by oracle engine whenever a insert, update or delete statement is fired.

Trigger is a stored procedure which is called implicitly by oracle engine whenever a insert, update or delete statement is fired. Aim:- TRIGGERS Trigger is a stored procedure which is called implicitly by oracle engine whenever a insert, update or delete statement is fired. Advantages of database triggers: ---> Data is generated

More information

CIS Reading Packet: "Views, and Simple Reports - Part 1"

CIS Reading Packet: Views, and Simple Reports - Part 1 CIS 315 - Reading Packet: "Views, and Simple Reports - Part 1" p. 1 CIS 315 - Reading Packet: "Views, and Simple Reports - Part 1" Sources: * Oracle9i Programming: A Primer, Rajshekhar Sunderraman, Addison

More information

Querying Microsoft SQL Server 2014

Querying Microsoft SQL Server 2014 Querying Microsoft SQL Server 2014 Course: 20461 Course Details Audience(s): IT Professional(s) Technology: Microsoft SQL Server 2014 Duration: 40 Hours ABOUT THIS COURSE This forty hours of instructor-led

More information

Oracle Database 18c. Gentle introduction to Polymorphic Tables Functions with Common patterns and sample use cases

Oracle Database 18c. Gentle introduction to Polymorphic Tables Functions with Common patterns and sample use cases Oracle Database 18c Gentle introduction to Polymorphic Tables Functions with Common patterns and sample use cases About me. Keith Laker Product Manager for Analytic SQL and Autonomous DW Oracle Blog: oracle-big-data.blogspot.com

More information

5 Integrity Constraints and Triggers

5 Integrity Constraints and Triggers 5 Integrity Constraints and Triggers 5.1 Integrity Constraints In Section 1 we have discussed three types of integrity constraints: not null constraints, primary keys, and unique constraints. In this section

More information

[AVNICF-MCSASQL2012]: NICF - Microsoft Certified Solutions Associate (MCSA): SQL Server 2012

[AVNICF-MCSASQL2012]: NICF - Microsoft Certified Solutions Associate (MCSA): SQL Server 2012 [AVNICF-MCSASQL2012]: NICF - Microsoft Certified Solutions Associate (MCSA): SQL Server 2012 Length Delivery Method : 5 Days : Instructor-led (Classroom) Course Overview Participants will learn technical

More information

Practical Workbook Database Management Systems

Practical Workbook Database Management Systems Practical Workbook Database Management Systems Name : Year : Batch : Roll No : Department: Third Edition Reviewed in 2014 Department of Computer & Information Systems Engineering NED University of Engineering

More information

CSC Web Programming. Introduction to SQL

CSC Web Programming. Introduction to SQL CSC 242 - Web Programming Introduction to SQL SQL Statements Data Definition Language CREATE ALTER DROP Data Manipulation Language INSERT UPDATE DELETE Data Query Language SELECT SQL statements end with

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: Write SELECT statements to access data from more than one table using equality and nonequality joins View data that generally

More information

Chapter 16: Advanced MySQL- Grouping Records and Joining Tables. Informatics Practices Class XII. By- Rajesh Kumar Mishra

Chapter 16: Advanced MySQL- Grouping Records and Joining Tables. Informatics Practices Class XII. By- Rajesh Kumar Mishra Chapter 16: Advanced MySQL- Grouping Records and Joining Tables Informatics Practices Class XII By- Rajesh Kumar Mishra PGT (Comp.Sc.) KV No.1, AFS, Suratgarh (Raj.) e-mail : rkmalld@gmail.com Grouping

More information

Power Up Your Apps with Recursive Subquery Factoring. Jared Still 2014

Power Up Your Apps with Recursive Subquery Factoring. Jared Still 2014 Power Up Your Apps with Recursive Subquery Factoring Jared Still 2014 About Me Prefer cmdline to GUI Like to know how things work Perl aficionado Oak Table Member Oracle ACE Started Oracle-L Twitter: @PerlDBA

More information

Overview of PL/SQL. About PL/SQL. PL/SQL Environment. Benefits of PL/SQL. Integration

Overview of PL/SQL. About PL/SQL. PL/SQL Environment. Benefits of PL/SQL. Integration About PL/ Overview of PL/ PL/ is an extension to with design features of programming languages. Data manipulation and query statements of are included within procedural units of code. PL/ Environment Benefits

More information

NULLs & Outer Joins. Objectives of the Lecture :

NULLs & Outer Joins. Objectives of the Lecture : Slide 1 NULLs & Outer Joins Objectives of the Lecture : To consider the use of NULLs in SQL. To consider Outer Join Operations, and their implementation in SQL. Slide 2 Missing Values : Possible Strategies

More information

Introduction to Views

Introduction to Views Introduction to Views View is a virtual table, through which a selective portion of the data from one or more tables can be seen. Views do not contain data of their own. They are used to restrict access

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

Code No. 90 Please check that this question paper contains 6 printed pages. Code number given on the right hand side of the question paper should be written on the title page of the answer-book by the

More information

New Oracle 11g SQL Features

New Oracle 11g SQL Features New Oracle 11g SQL Features Presented by: John Jay King King Training Resources - john@kingtraining.com Download this paper from: http://www.kingtraining.com 1 Session Objectives Learn new Oracle 11g features

More information

Learning Alliance Corporation, Inc. For more info: go to

Learning Alliance Corporation, Inc. For more info: go to Writing Queries Using Microsoft SQL Server Transact-SQL Length: 3 Day(s) Language(s): English Audience(s): IT Professionals Level: 200 Technology: Microsoft SQL Server Type: Course Delivery Method: Instructor-led

More information

Full file at

Full file at David Kroenke's Database Processing: Fundamentals, Design and Implementation (10 th Edition) CHAPTER TWO INTRODUCTION TO STRUCTURED QUERY LANGUAGE (SQL) True-False Questions 1. SQL stands for Standard

More information

The Seven Case Tables

The Seven Case Tables A P P E N D I X A The Seven Case Tables This appendix offers an overview of the seven case tables used throughout this book, in various formats. Its main purpose is to help you in writing SQL commands

More information

: ADMINISTRATION I EXAM OBJECTIVES COVERED IN THIS CHAPTER:

: ADMINISTRATION I EXAM OBJECTIVES COVERED IN THIS CHAPTER: 4367c01.fm Page 1 Wednesday, April 6, 2005 8:14 AM Chapter 1 Oracle Database 10g Components and Architecture ORACLE DATABASE 10G: ADMINISTRATION I EXAM OBJECTIVES COVERED IN THIS CHAPTER: Installing Oracle

More information

Assignment 5: SQL II Solution

Assignment 5: SQL II Solution Data Modelling and Databases Exercise dates: March 29/March 30, 2018 Ce Zhang, Gustavo Alonso Last update: April 12, 2018 Spring Semester 2018 Head TA: Ingo Müller Assignment 5: SQL II Solution This assignment

More information

Visit for more.

Visit  for more. Chapter 9: More On Database & SQL Advanced Concepts Informatics Practices Class XII (CBSE Board) Revised as per CBSE Curriculum 2015 Visit www.ip4you.blogspot.com for more. Authored By:- Rajesh Kumar Mishra,

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

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

KKCC INFO SYSTEMS

KKCC INFO SYSTEMS 1 ORACLE(SQL) INTRODUCTION TO RDBMS DATABASE CONCEPTS What is a Database? A Database Management System (DBMS) consists of a collection of interrelated data and a set of programmes to access that data.

More information

Querying Microsoft SQL Server (MOC 20461C)

Querying Microsoft SQL Server (MOC 20461C) Querying Microsoft SQL Server 2012-2014 (MOC 20461C) Course 21461 40 Hours This 5-day instructor led course provides students with the technical skills required to write basic Transact-SQL queries for

More information

SQL Data Query Language

SQL Data Query Language SQL Data Query Language André Restivo 1 / 68 Index Introduction Selecting Data Choosing Columns Filtering Rows Set Operators Joining Tables Aggregating Data Sorting Rows Limiting Data Text Operators Nested

More information

Databases - 5. Problems with the relational model Functions and sub-queries

Databases - 5. Problems with the relational model Functions and sub-queries Databases - 5 Problems with the relational model Functions and sub-queries Problems (1) To store information about real life entities, we often have to cut them up into separate tables Problems (1) To

More information

Miguel Anjo (IT/ADC)

Miguel Anjo (IT/ADC) Database Workshop for LHC online/offline developers SQL (2/2) (IT/ADC) Miguel.Anjo@cern.ch http://cern.ch/it-adc (based on Andrea Valassi slides on Advanced SQL) 26 January 2005 Previous tutorials: Database

More information

Chapter _CH06/CouchmanX 10/2/01 1:32 PM Page 259. Manipulating Oracle Data

Chapter _CH06/CouchmanX 10/2/01 1:32 PM Page 259. Manipulating Oracle Data Chapter 6 200095_CH06/CouchmanX 10/2/01 1:32 PM Page 259 Manipulating Oracle Data 200095_CH06/CouchmanX 10/2/01 1:32 PM Page 260 260 OCP Introduction to Oracle9i: SQL Exam Guide T his chapter covers the

More information

COURSE OUTLINE MOC 20461: QUERYING MICROSOFT SQL SERVER 2014

COURSE OUTLINE MOC 20461: QUERYING MICROSOFT SQL SERVER 2014 COURSE OUTLINE MOC 20461: QUERYING MICROSOFT SQL SERVER 2014 MODULE 1: INTRODUCTION TO MICROSOFT SQL SERVER 2014 This module introduces the SQL Server platform and major tools. It discusses editions, versions,

More information

Q5 Question Based on SQL & Database Concept Total Marks 8. Theory Question 2 Marks / SQL Commands 6 Marks / Output of commands 2 Marks

Q5 Question Based on SQL & Database Concept Total Marks 8. Theory Question 2 Marks / SQL Commands 6 Marks / Output of commands 2 Marks Q5 Question Based on SQL & Database Concept Total Marks 8 Theory Question 2 Marks / SQL Commands 6 Marks / Output of commands 2 Marks Q1 Define the Following with example i) Primary Key ii) Foreign Key

More information

RESTRICTING AND SORTING DATA

RESTRICTING AND SORTING DATA RESTRICTING AND SORTING DATA http://www.tutorialspoint.com/sql_certificate/restricting_and_sorting_data.htm Copyright tutorialspoint.com The essential capabilities of SELECT statement are Selection, Projection

More information

a 64-bit Environment Author: Rob procedures. SSIS servers. Attunity.

a 64-bit Environment Author: Rob procedures. SSIS servers. Attunity. Oracle Driver configuration for SSIS, SSRS and SSAS in Environment a 64-bit Technical Article Author: Rob Kerr ( rkerr@blue-granite.com, http://blog.robkerr.com ) Published: March 2010 Applies to: SQL

More information

2) SQL includes a data definition language, a data manipulation language, and SQL/Persistent stored modules. Answer: TRUE Diff: 2 Page Ref: 36

2) SQL includes a data definition language, a data manipulation language, and SQL/Persistent stored modules. Answer: TRUE Diff: 2 Page Ref: 36 Database Processing, 12e (Kroenke/Auer) Chapter 2: Introduction to Structured Query Language (SQL) 1) SQL stands for Standard Query Language. Diff: 1 Page Ref: 32 2) SQL includes a data definition language,

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

Definitions. Database Architecture. References Fundamentals of Database Systems, Elmasri/Navathe, Chapter 2. HNC Computing - Databases

Definitions. Database Architecture. References Fundamentals of Database Systems, Elmasri/Navathe, Chapter 2. HNC Computing - Databases HNC Computing - s HNC Computing - s Architecture References Fundamentals of Systems, Elmasri/Navathe, Chapter 2 Systems : A Practical Approach, Connolly/Begg/Strachan, Chapter 2 Definitions Schema Description

More information

PBarel@Qualogy.com http://blog.bar-solutions.com About me Patrick Barel Working with Oracle since 1997 Working with PL/SQL since 1999 Playing with APEX since 2003 (mod_plsql) ACE since 2011 OCA since December

More information

Test Bank for Database Processing Fundamentals Design and Implementation 13th Edition by Kroenke

Test Bank for Database Processing Fundamentals Design and Implementation 13th Edition by Kroenke Test Bank for Database Processing Fundamentals Design and Implementation 13th Edition by Kroenke Link full download: https://testbankservice.com/download/test-bank-fordatabase-processing-fundamentals-design-and-implementation-13th-edition-bykroenke

More information

INDEX. 1 Introduction. 2 Types of Cursors 2.1 Explicit cursor 2.2 Attributes 2.3 Implicit cursor 2.4 Attributes. 3 Parameterized cursor

INDEX. 1 Introduction. 2 Types of Cursors 2.1 Explicit cursor 2.2 Attributes 2.3 Implicit cursor 2.4 Attributes. 3 Parameterized cursor INDEX 1 Introduction 2 Types of Cursors 2.1 Explicit cursor 2.2 Attributes 2.3 Implicit cursor 2.4 Attributes 3 Parameterized cursor INTRODUCTION what is cursor? we have seen how oracle executes an SQL

More information

Databases - 3. Null, Cartesian Product and Join. Null Null is a value that we use when. Something will never have a value

Databases - 3. Null, Cartesian Product and Join. Null Null is a value that we use when. Something will never have a value Databases - 3, Cartesian Product and Join is a value that we use when Something will never have a value Something will have a value in the future Something had a value but doesn t at the moment is a reserved

More information

Databases - 3. Null, Cartesian Product and Join. Null Null is a value that we use when. Something will never have a value

Databases - 3. Null, Cartesian Product and Join. Null Null is a value that we use when. Something will never have a value Databases - 3 Null, Cartesian Product and Join Null Null is a value that we use when Something will never have a value Something will have a value in the future Something had a value but doesn t at the

More information

20461: Querying Microsoft SQL Server 2014 Databases

20461: Querying Microsoft SQL Server 2014 Databases Course Outline 20461: Querying Microsoft SQL Server 2014 Databases Module 1: Introduction to Microsoft SQL Server 2014 This module introduces the SQL Server platform and major tools. It discusses editions,

More information

Writing Queries Using Microsoft SQL Server 2008 Transact- SQL

Writing Queries Using Microsoft SQL Server 2008 Transact- SQL Writing Queries Using Microsoft SQL Server 2008 Transact- SQL Course 2778-08; 3 Days, Instructor-led Course Description This 3-day instructor led course provides students with the technical skills required

More information

DB2 for z/os is Serious About Analytics: Leveraging SQL to Analyze Your Data Where it Resides

DB2 for z/os is Serious About Analytics: Leveraging SQL to Analyze Your Data Where it Resides DB2 for z/os is Serious About Analytics: Leveraging SQL to Analyze Your Data Where it Resides Maryela Weihrauch, IBM Distinguished Engineer, weihrau@us.ibm.com Notices and disclaimers Copyright 2016 by

More information

Suppose we need to get/retrieve the data from multiple columns which exists in multiple tables...then we use joins..

Suppose we need to get/retrieve the data from multiple columns which exists in multiple tables...then we use joins.. JOINS: why we need to join?? Suppose we need to get/retrieve the data from multiple columns which exists in multiple tables...then we use joins.. what is the condition for doing joins??...yes at least

More information

TO_CHAR Function with Dates

TO_CHAR Function with Dates TO_CHAR Function with Dates TO_CHAR(date, 'fmt ) The format model: Must be enclosed in single quotation marks and is case sensitive Can include any valid date format element Has an fm element to remove

More information

Downloaded from

Downloaded from Unit-III DATABASES MANAGEMENT SYSTEM AND SQL DBMS & Structured Query Language Chapter: 07 Basic Database concepts Data : Raw facts and figures which are useful to an organization. We cannot take decisions

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

COSC 304 Introduction to Database Systems SQL. Dr. Ramon Lawrence University of British Columbia Okanagan

COSC 304 Introduction to Database Systems SQL. Dr. Ramon Lawrence University of British Columbia Okanagan COSC 304 Introduction to Database Systems SQL Dr. Ramon Lawrence University of British Columbia Okanagan ramon.lawrence@ubc.ca SQL Queries Querying with SQL is performed using a SELECT statement. The general

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

KENDRIYA VIDYALAYA ALIGANJ SHIFT-II HOLIDAY HOMEWORK CLASS-XII INFORMATICS PRACTICES

KENDRIYA VIDYALAYA ALIGANJ SHIFT-II HOLIDAY HOMEWORK CLASS-XII INFORMATICS PRACTICES KENDRIYA VIDYALAYA ALIGANJ SHIFT-II HOLIDAY HOMEWORK 18-19 CLASS-XII INFORMATICS PRACTICES 1. Arrange the following data types in increasing order of their size : byte, int, float, double, char, boolean.

More information

Course 20461C: Querying Microsoft SQL Server

Course 20461C: Querying Microsoft SQL Server Course 20461C: Querying Microsoft SQL Server Audience Profile About this Course This course is the foundation for all SQL Serverrelated disciplines; namely, Database Administration, Database Development

More information

Querying Microsoft SQL Server

Querying Microsoft SQL Server 20461 - Querying Microsoft SQL Server Duration: 5 Days Course Price: $2,975 Software Assurance Eligible Course Description About this course This 5-day instructor led course provides students with the

More information

Relational Database Management Systems Mar/Apr I. Section-A: 5 X 4 =20 Marks

Relational Database Management Systems Mar/Apr I. Section-A: 5 X 4 =20 Marks Relational Database Management Systems Mar/Apr 2015 1 I. Section-A: 5 X 4 =20 Marks 1. Database Database: Database is a collection of inter-related data which contains the information of an enterprise.

More information

Handout 9 CS-605 Spring 18 Page 1 of 8. Handout 9. SQL Select -- Multi Table Queries. Joins and Nested Subqueries.

Handout 9 CS-605 Spring 18 Page 1 of 8. Handout 9. SQL Select -- Multi Table Queries. Joins and Nested Subqueries. Handout 9 CS-605 Spring 18 Page 1 of 8 Handout 9 SQL Select -- Multi Table Queries. Joins and Nested Subqueries. Joins In Oracle https://docs.oracle.com/cd/b19306_01/server.102/b14200/queries006.htm Many

More information

After completing this course, participants will be able to:

After completing this course, participants will be able to: Querying SQL Server T h i s f i v e - d a y i n s t r u c t o r - l e d c o u r s e p r o v i d e s p a r t i c i p a n t s w i t h t h e t e c h n i c a l s k i l l s r e q u i r e d t o w r i t e b a

More information

Querying Data with Transact-SQL

Querying Data with Transact-SQL Course Code: M20761 Vendor: Microsoft Course Overview Duration: 5 RRP: 2,177 Querying Data with Transact-SQL Overview This course is designed to introduce students to Transact-SQL. It is designed in such

More information

20461: Querying Microsoft SQL Server

20461: Querying Microsoft SQL Server 20461: Querying Microsoft SQL Server Length: 5 days Audience: IT Professionals Level: 300 OVERVIEW This 5 day instructor led course provides students with the technical skills required to write basic Transact

More information

T-SQL Training: T-SQL for SQL Server for Developers

T-SQL Training: T-SQL for SQL Server for Developers Duration: 3 days T-SQL Training Overview T-SQL for SQL Server for Developers training teaches developers all the Transact-SQL skills they need to develop queries and views, and manipulate data in a SQL

More information

AVANTUS TRAINING PTE LTD

AVANTUS TRAINING PTE LTD [MS20461]: Querying Microsoft SQL Server 2014 Length : 5 Days Audience(s) : IT Professionals Level : 300 Technology : SQL Server Delivery Method : Instructor-led (Classroom) Course Overview This 5-day

More information

INTERNATIONAL INDIAN SCHOOL, RIYADH XI XII BOYS SECTION

INTERNATIONAL INDIAN SCHOOL, RIYADH XI XII BOYS SECTION INTERNATIONAL INDIAN SCHOOL, RIYADH XI XII BOYS SECTION Grade- XI COMPUTER SCIENCE Unit I Programming and Computational Thinking 1. What are the functions of computer? 2. Briefly explain the basic architecture

More information

CIS Week 11 Lab Exercise p. 1 Fall 2009

CIS Week 11 Lab Exercise p. 1 Fall 2009 CIS 315 - Week 11 Lab Exercise p. 1 Sources: CIS 315 - Slightly-different version of Week 11 Lab, 11-03-09 additional create-table constraints, introduction to sequences, SQL*Loader, and views, and very

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