Grupne funkcije. Grupne funkcije rade nad skupinom redova i vraćaju jedan red za svaku grupisanu grupu

Similar documents
CH-15 SIMPLE QUERY AND GROUPING

SQL funkcije. select trunc(134,-2) from dual; Vraća vrednost broja m "odsečenu" na n decimala. Primer 1.

RDBMS Using Oracle. Lecture week 5. Lecture Overview

ABSTRACT INTRODUCTION IMPORTANT CONCEPTS. John Jay King, King Training Resources

Spool Generated For Class of Oracle By Satish K Yellanki

PATANJALI RISHIKUL, PRAYAGRAJ

THE INTEGRATION OF CROATIAN HOTEL INDUSTRY INTO THE STANDARD EUROPEAN AND INTERNATIONAL PERFORMANCE MEASUREMENT SYSTEM

5/10/2018. Connor McDonald

SIMPLE DAILY ET 0 ESTIMATION TECHNIQUES UDC (045)=111

On Off Regulator Temperature On Off Temperature Regulator (Vježba 5)

Human Resources Management in aspect of Sustainable Development

Pet činjenica koje morate znati o klimatskim promenama

Column Functions and Grouping

PRILOG III OBRASCI UVERENJA O KRETANJU ROBE EUR.1 I ZAHTEVA ZA IZDAVANJE UVERENJA O KRETANJU ROBE EUR.1

SQL. Connor McDonald 8/13/2018. The meanest, fastest thing out there. Connor McDonald

Andrija Petrović

Spool Generated For Class of Oracle By Satish K Yellanki

Lecture9: Data Manipulation in SQL, Advanced SQL queries


SQL and PL/SQL. Connor McDonald 7/17/2018. The meanest, fastest thing out there. Connor McDonald

MAPIRANJE POTENCIJALA POLJOPRIVREDNE I ŠUMSKE BIOMASE U HRVATSKOJ MAPPING OF AGRICULTURAL AND WOOD BIOMASS POTENTIAL IN CROATIA

Relationship between energy consumption and economic growth in 30. countries in Europe panel

Nested SQL Dr. Zhen Jiang

Relational Normalization Theory. Dr. Philip Cannata

LECTURE9-PART2: DATA MANIPULATION IN SQL, ADVANCED SQL QUERIES AND VIEW

A32. PRIKLJU^NI ELEMENTI OD ALUMINIJA DEBLJINE 0,6 mm. Fittings made up of aluminium thickness 0,6 mm. LIM-MONT d.o.o.

OF HEALTH RISK ZONES FROM AIR POLLUTION IN THE CITY OF NIŠ CAUSED BY THE PRESENCE OF SOOT WITH THE USE OF THE RBF NEURAL NETWORK

SIGURNOST GRAĐEVINSKIH KONSTRUKCIJA SAFETY OF CONSTRUCTION STRUCTURES

SQL Programming 1 SQL1 1

Lanteria HR Report Center

INFLUENCE OF COPPER FINENESS TO WIRE MECHANICAL PROPERTIES AT WIRE FORMING

PESTICIDE RESIDUES ON FOOD OF PLANT ORIGIN IN CROATIA REZIDUI PESTICIDA NA HRANI BILJNOG PODRIJETLA U HRVATSKOJ

DANAS JE NEPRIHVATLJIVA ZGRADA BEZ URAĐENOG TEHNIČKOG PRIJEMA AN UNCOMMISSIONED BUILDING IS NOT AN OPTION TODAY

PRINCIPLES FOR RISK REDUCTION IN THE DESIGN OF MACHINERY UDC : Žarko Janković, Aleksandra Petković

SQL and PL/SQL. Connor McDonald 4/24/2018. The meanest, fastest thing out there. Connor McDonald

FEEDNEEDS THE SERBIAN RESULTS

IMPORTANCE OD EMOTIONAL INTELIGENCE TO SPORT ACTORS AND ITS INFLUENCE TO CREATING ORGANIZATIONAL CLIMATE

Methods for determination of centre of stiffness and torsional radius in multi-storey buildings

Margareta ŠEPAROVIĆ, Ivan BARBIĆ

ASSESSMENT APPROACH TOWARDS COMPATIBILITY OF SERVICES UDC : Mladen Velev, Kiril Anguelov

MEASUREMENT OF O 2 IN COMBUSTION CHAMBER WITH AN ANALYSIS OF THE BURN OUT RATIO

SOME PROPERTIES OF GUYON S METHOD FOR DRAIN SPACING DETERMINATION ON THE MARSHY GLEY SOIL

CARACTERISATION OF TITANIUM NITRIDE LAYERS DEPOSITED BY REACTIVE PLASMA SPRAYING

POREĐENJE 2D I 3D MODELIRANJA TRANSPORTNIH PROCESA PRILIKOM SAGOREVANJA BALIRANIH POLJOPRIVREDNIH OSTATAKA


BESPLATNE UREDSKE APLIKACIJE EASY ACCESS

BESPLATNE UREDSKE APLIKACIJE EASY ACCESS

COINS Ti PO/IN Inventory Turnover Report

Oracle MOOC: SQL Fundamentals

CUPA Procedures. Date September 29, Theresa Porter, Information Technology Consultant, BOR. Doug Corwin, Information Technology Consultant, BOR

Activant SDI Daily Transactions and Balancing your INVALUE report to the General Ledger

Biblid: (2016) 20; 1; p 4-8

POSSIBILITIES OF USING THERMOGRAVIMETRIC ANALYSIS FOR ENERGETIC

POSSIBILITIES OF USING THERMOGRAVIMETRIC ANALYSIS FOR ENERGETIC

THE CAPACITY OF CONFLICT POINTS BETWEEN DOUBLE-TRACK LINES

AUTOID BASED INTEGRATED PRODUCT TRACEABILITY ALONG THE PRODUCT LIFE CYCLE UDC Şeref Erkayhan

Analytic Functions 101

Reading Plans in the cloud or not Revised November 2017

2/5/2019. Connor McDonald. Copyright 2018, Oracle and/or its affiliates. All rights reserved.

INVESTIGATING MACHINERY MANAGEMENT PARAMETERS WITH COMPUTER TOOLS

DISTRIBUCIJSKE GREŠKE U PROCESU PROCJENE PERFORMANSI ZAPOSLENIH

ENERGY AT THE CROSSROADS

B0013: Compensation Modeling Business Objects Web Intelligence

Analytic functions allow the rows in a result set to 'peek' at each other, avoiding the need for joining duplicated data sources.

Popular Reports. Maitre D Software Suite COPYRIGHT POSERA SOFTWARE INC

Two-Person Segregation. Post accounts Post G/L. Complete check register. Authorize check requests Mail checks. Sign employee contracts

SOME PROPERTIES OF DAGAN S METHOD FOR DRAIN SPACING DETERMINATION IN MARSHY - GLEY SOIL

Homework 5: Structured Query Language (SQL) (100 points)

Inbound 846 (Inventory Inquiry/Advice) X12 Specification for Release

Investigating the optimum fineness of the coal grain in the Brown Coal Mine Kakanj in order to fully exploit its calorific value

APPLICATION OF SEASONAL ADJUSTMENT FACTORS TO SUBSEQUENT YEAR DATA. Corresponding Author

SQL> exec sample_font

POPULATION, MIGRATION, LIVING STANDARD AND SOCIAL PRESSURE: A MODELING APPROACH FROM THERMODYNAMICS

MERCHANDISING IN RETAIL TRADE OTHERS ABOUT US

KORPORATIVNA DRUŠTVENA ODGOVORNOST

July Copyright 2018 NetSuite Inc.

Under The Hood Of Query Transformations

mbusa Instagram account report Jan 01, May 28, 2016

RPS - EDI Specifications User Guide PART 11: 862 (SHIPPING SCHEDULE) ANSI X.12 - RELEASE

Performance tuning using SQL new features. By Riyaj Shamsudeen

So You Think You Can Combine Data Sets? Christopher Bost

Oracle. Sales Cloud Using Incentive Compensation. Release 13 (update 18B)

OCJENA IZLOŽENOSTI LJUDI VIBRACIJAMA I BUCI U ZGRADAMA ZA STANOVANJE

Computer Proficiency Exam

MicroStrategy. Providing Intelligent Answers to Business Questions. Presented by Nette Johnson, Controller s Office

T R O G I R FUTURE COOPERATION BETWEEN CIVIL SOCIETY AND LOCAL GOVERNEMENT

Database Systems CSE 414

Variance Estimation for Product Sales in the 2017 Economic Census: Utilizing Multiple Imputation to Account for Sampling and Imputation Variance

Ben Teusch HR Analytics Consultant

APPLICATION OF MEASUREMENT NETS FOR DEFORMATION EVALUATION AT BENDING

20 PR/HR Enhancements in 50 minutes

Varijabilnost imunokemijskih metoda i klinički značaj. Adriana Unić

AdHoc Quick Payroll Processing HSA Employer Payroll Funding Xerox HR Solutions, LLC. All rights reserved.

SOME PROPERTIES OF KIRKHAM S METHOD FOR DRAIN SPACING DETERMINATION IN MARSHY - GLEY SOIL

Copyright 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 13

Automatic Identification of Similarities Across Products to Improve the Configuration Process in ETO Companies

Prvi strani poslovni jezik 1 engleski (bol. 12)

CREATIVE ACCOUNTING MOTIVES, TECHNIQUES AND POSSIBILITIES OF PREVENTION

Semester 1 Session 3. Database design

Accurate Campaign Targeting Using Classification Algorithms

Transcription:

Grupisanje podataka

Ciljevi Preoznati mogućnosti groupnih funkcija Upotrijebiti groupne funkcije u SELECT iskazima Grupisati podatake upotrebom GROUP BY klauzule Uključiti ili isključiti grupisane redova upotrebom HAVING klauzule

Grupne funkcije Grupne funkcije rade nad skupinom redova i vraćaju jedan red za svaku grupisanu grupu EMPLOYEES DEPTNO SAL --------- --------- 10 2450 10 5000 10 1300 20 800 20 1100 20 3000 20 3000 20 2975 30 1600 30 2850 30 1250 30 950 Maksimalna plata u employees tabeli MAX(SAL) --------- 5000

Tipovi grupnih funkcija AVG COUNT MAX MIN STDDEV SUM VARIANCE SELECT [column,] group_function(column) FROM table [WHERE condition] [GROUP BY column] [ORDER BY column];

AVG, SUM, MIN i MAX funkcije AVG i SUM koriste se za numeričke podatke MIN i MAX funkcije vraćaju minimalnu i maksimalnu vrijednost iz grupe podataka za bilo koji tip podatka SQL> SELECT AVG(sal), MAX(sal), 2 MIN(sal), SUM(sal) 3 FROM emp 4 WHERE job LIKE 'SALES%'; AVG(SAL) MAX(SAL) MIN(SAL) SUM(SAL) -------- --------- --------- --------- 1400 1600 1250 5600

COUNT funkcija COUNT(Izraz) vraća broj slogova sa ne NULL vrijednostima za izraz SQL> SELECT COUNT(*) COUNT(*) --------- 107 SQL> SELECT COUNT(commission_pct) COUNT(COMMISSION_PCT) ---------------------- 35

NVL i DISTINCT sa GROUP-nim funkcijama COUNT(DISTINCT izraz) vraća broj različitih non-null vrijednosti izraza izraz NVL funkcijom se forsira da grupne funkcije prihvate i Null vrijednosti kolona SQL> SELECT COUNT(distinct department_id) COUNT(DISTINCT DEPARTMENT_ID) ---------------------------- 11 SQL> SELECT AVG(NVL(commission_pct,0)) PROSJEK PROSJEK ---------------- 0.072897196

Grupe podataka EMPLOYEES DEPTNO SAL --------- --------- 10 2450 10 5000 10 1300 20 800 20 1100 20 3000 20 3000 20 2975 30 1600 30 2850 30 1250 30 950 30 1500 2916.6667 2175 Prosječna č plata za odjele 10, 20 i 30 1566.6667 DEPTNO AVG(SAL) ------- --------- 10 2916.6667 20 2175 30 1566.6667

Grupisanje podataka sa GROUP BY klauzulom Za podjelu redova u tabeli na manje grupe koristi se GROUP BY klauzula SELECT column, group_function(column) FROM table [WHERE condition] [GROUP BY group_by_expression] [ORDER BY column]; Sve kolone u SELECT listi koje nisu group-ne funkcije moraju biti u GROUP BY klauzuli SQL> SELECT deptment_id, AVG(salary) 3 GROUP BY department_id; DEPTNO AVG(SAL) --------- --------- 10 2916.6667 20 2175 30 1566.6667

Grupisanje po više kolona EMPLOYEES DEPTNO JOB_TITLE SAL --------- --------- --------- 10 MANAGER 2450 10 PRESIDENT 5000 10 CLERK 1300 20 CLERK 800 20 CLERK 1100 20 ANALYST 3000 20 ANALYST 3000 20 MANAGER 2975 30 SALESMAN 1600 30 MANAGER 2850 30 SALESMAN 1250 30 CLERK 950 30 SALESMAN 1500 30 SALESMAN 1250 suma plata grupisana po odjelima i poslovima u tabeli zaposlenih DEPTNO -------- 10 10 10 20 20 20 30 30 30 JOB_TITLE SUM(SAL) --------- ------- CLERK 1300 MANAGER 2450 PRESIDENT 5000 ANALYST 6000 CLERK 1900 MANAGER 2975 CLERK 950 MANAGER 2850 SALESMAN 5600

Upotreba GROUP BY klauzule sa više kolona SQL> SELECT department_id deptno, job_id, sum(salary) 3 GROUP BY department_id, job_id; DEPTNO JOB_ID SUM(SALARY) --------- --------- ----------- 10 CLERK 1300 10 MANAGER 2450 10 PRESIDENT 5000 20 ANALYST 6000 20 CLERK 1900... 21 rows selected.

Greške pri korištenju GROUP funkcija Sve kolone ili izrazi iz SELECT liste koji nisu grupišuće funkcije moraju biti u GROUP BY klauzuli SQL> SELECT department_id, COUNT(last_name) ; SELECT department_id, COUNT(last_name) * ERROR at line 1: ORA-00937: not a single-group group function

Greške pri korištenju GROUP funkcija Grupišuće funkcije ne mogu se koristiti u WHERE klauzuli za restrikciju podataka HAVING klauzula se koristi za restrikciju podataka po grupi SQL> SELECT department_id, AVG(salary) 3 WHERE AVG(salary) > 2000 4 GROUP BY deptment_id; WHERE AVG(salary) > 2000 * ERROR at line 3: ORA-00934: group function is not allowed here

Isključivanje grupnih rezultata EMPLOYEES DEPTNO SAL --------- --------- 10 2450 10 5000 10 1300 20 800 20 1100 20 3000 20 3000 20 2975 30 1600 30 2850 30 1250 30 950 30 1500 30 1250 5000 3000 2850 maksimalna plata po grupi veća do 2900 BAM DEPTNO MAX(SAL) --------- --------- 10 5000 20 3000

Isključivanje grupnih rezultata HAVING klauzula Upotrebom HAVING klauzule vrši se restrikcija rezultata: Redovi se grupišu Primijeni se grupišuća funkcija Vrši se selekcija grupisanih redova pomoću HAVING klauzule SELECT column, group_function FROM table [WHERE condition] [GROUP BY group_by_expression] [HAVING group_condition] [ORDER BY column];

HAVING klauzula SQL> SELECT department_id deptno, max(salary) 3 GROUP BY department_id 4 HAVING max(salary)>2900; DEPTNO MAX(SALARY) --------- ----------- 10 5000 20 3000 SQL> SELECT job_id, SUM(salary) PAYROLL 3 WHERE job NOT LIKE 'SALES%' 4 GROUP BY job_id 5 HAVING SUM(salary)>5000 6 ORDER BY SUM(salary); JOB_ID PAYROLL --------- --------- ANALYST 6000 MANAGER 8275

Ugniježdene grupne funkcije SQL> SELECT max(avg(salary)) 3 GROUP BY department_id; MAX(AVG(SALARY)) ---------------- 2916.6667 Upotreba dodatnih kolona prilikom pisanja ugniježdenih grupnih funkcija može izazvati dodatne probleme čak i sa prisustvom GROUP BY klauzule SQL> SELECT department_id, max(avg(salary)) 3 GROUP BY department_id; select department_id, max(sum(salary)) * ERROR at line 1: ORA-00937: not a single-group group function

Kratak pregled SELECT column, group_function(column) FROM table [WHERE condition] [GROUP BY group_by_expression] [HAVING group_condition] [ORDER BY column]; Izraz WHERE GROUP BY HAVING Opis Klauzula za restriktivno poređenje podataka koji nisu grupisani Grupisanje kolona koje nisu grupne funkcije Klauzula za restriktivno poređenje podataka koji su ili grupne funkcije ili obične kolone tabele

Grupisanje podataka