Relationel Algebra og SQL



Relaterede dokumenter
Relationel Algebra...1. Indholdsfortegnelse...1. Operationer på den relationelle model...2

Database-sproget SQL. SELECT A1,, Ar FROM R1,, Rk WHERE B med. SQL ~ SEQUEL ~ Structered English QUEry Language SQL-forespørgsel, generel form

Introduktion til SQL queries

Hvad er en relationsdatabase? Odense, den 19. januar Version 1.0

Trin 1 INSERT INTO Debitor (DebitorNr, KundeKategori, KreditMax, SidstRykket, Sælger ) VALUES (20121, 10, 40000, NULL, "Bjarne Larsen");

Databaser Obligatorisk opgave 1

1. Basal select med (stjerne)

SQL-opgaver 5 løsning

Opgave 1 Basal select med (stjerne)

DB undervisning 01-01

Listen over reserverede ord er meget lang, men de væsentligste vil jeg beskrive her i denne artikel:

De vigtigste SQL-sætninger. SQL kap Oprette database. DDL og DML

Skriftlig eksamen i kurset. Informationssystemer

Views etc. Databaser

Databasesystemer fra forskellige synsvinkler

DML, Foresprgsler Relationel algebra + noget mere! af skemaer (overlap m. DDL)

Databasesystemer. IT Universitetet i København 7. juni 2005

Database-sproget SQL. SELECT A1,, Ar FROM R1,, Rk WHERE B med. SQL ~ SEQUEL ~ Structered English QUEry Language SQL-forespørgsel, generel form

Skriftlig eksamen i. Datalogi. Databaser. Sommer 2001

Eksamen Uden hjælpemidler - normeret til 60 minutter

Databaser Obligatorisk opgave 2 Vejledende løsning

Sidste forelæsning. Jacob Aae Mikkelsen. 28. april 2013 IMADA. Jacob Aae Mikkelsen (IMADA) Sidste forelæsning 28.

Databasesystemer. Databaser, efterår Troels Andreasen. Efterår 2002

Kursus/workshop: SQL

Databasesystemer. IT Universitetet i København 16. januar 2006

Database optimering - Indeks

Database design for begyndere

Eksempel på en database: studenter, kurser, eksamener

Skriftlig eksamen i. Databaser. Vinter 2002/2003. Vejledende løsninger

Obligatorisk opgave 2. SQL, relationel algebra og relationel kalkyle

Skriftlig eksamen i Databaser, Vinter 2001/2002. Pa opfordring har jeg udarbejdet mulige lsninger pa eksamensopgaverne, men

Samspillet mellem databaser og kort styres af GeoCAD programmet GeoDB.

Søren Løbner (lobner) ddb Databaser

Database. lv/

JAR Øvelse nr. 2. JAR-Manual, Version 1.0. Avanceret søgning. Regionsvejledning

Begrænsninger i SQL. Databaser, efterår Troels Andreasen

1. Indholdsfortegnelse. 2. Landeopsætning. ClickLearn Bog October 4, 2010 NAV undervisning 1/15. SW-Tools ClickLearn Bog 10/4/2010 1/15

Analyse 13. marts 2013

Risikovurdering af. Bilag 1. Definition af udtræk fra databaser. Risikovurdering af lossepladsers påvirkning af overfladevand 1

Side 1. Databaser og SQL. Dagens gang. Databasebegreber. Introduktion til SQL Kap 1-5

Databasesystemer. IT Universitetet i København 8. juni 2006

Tredje undervisningsgang. Database

Introduktion til Oracle, Datalogi, RUC Af: Jens Lauterbach 2002

Få sin querystring til at fungere. (Nybegyndere)

Efterår 2002 Note 10. Temaopgave

Guide. Administration af FDF.dk/Nyborg. 1. Udgave Ide og layout Christoffer S. Rasmussen

Eksamen, DSDS, efterår 2007

Information Integration

Conceptual, logic, physical

Kom godt i gang med elektroniske ansøgninger om parallelimport Indhold

Brugermanual til Ventelistelukning.

Screening af forureningsrisiko. Data- og GIS-udfordringer ved kompleks datasammenstilling PB Insights, den 19. september 2013 John Pedersen / Orbicon

Videregående databaseprogrammering

3.0 Velkommen til manualen for kanalen Shift Introduktion til kanalen Hvad er et spot? Opret et nyt spot 2

Manglende konsistens i datamodellen og upræcise SQLsætninger er årsagen til, at mange IT-systemer fejler.

Katalog sådan opdaterer du dine oplysninger til Danhostel-kataloget. Version 1.0 INDHOLDSFORTEGNELSE

Import af rekursivt (parent-child) hierarki i Palo

Buildvejledning (Release, patch og testversion)

MsSQL: Basal performance tuning, part 1

Svarudskrivning. 1 Introduktion

DATABASE - MIN MUSIKSAMLING

Introduktion til programmering

NS 5.0 C/SIDEklient. dansk

A11: Last Year s Exam

Anklagemyndighedens Vidensbase

51 Københavns Universitet 52 Københavns Universitet 53 Københavns Universitet 54 Århus Universitet 55 Århus Universitet 56 Århus Universitet 57

Funktionel afhængighed

Views. Et view er en relation defined ud fra gemte tabeller ( base tables ) og andre views To typer:

Karens lille vejledning til Access

OVERENSKOMSTSTATISTIK 2014

Databaseadgang fra Java

Guide til Web-direct. Indholdsfortegnelse

Database tips. Den forudsætter lidt kendskab til SQL men er for mindre erfarne. Denne guide er oprindeligt udgivet på Eksperten.dk

Databasesystemer. IT Universitetet i København 8. juni 2006

Efteruddannelse.dk uden EASY-A - Delleverance 4A Hent udbudsoplysninger i EU.dk - Design

Allan C. Malmberg. Terningkast

Bilag d. SYSTEMDOKUMENTATION til Inventarsystemet MS Access løsning

SQL Server 2008 Spatiale eksempler. Plan & Miljø, GIS

Eksamen, DSDS, efterår 2008

1. Generelt om WFS Opsætning Eksempler... 6

ISO 27001/27002:2013 i SecureAware Policy TNG

Projekt: Database. Multimedia Design: Semester 3 - projekt 01. Sabine Larsen cph-sl176@cphbusiness.dk. Anastasia Keller cph-ak186@cphbusiness.

Program Dokumentation PC Software Skrevet af. Gruppen. Version 1.0

Øvelse 9. Klasser, objekter og sql-tabeller insert code here

Dorthes Bog Centrum har ca forskellige bøger (bibliografiske enheder), som alle skal være søgbare fra prototypen.

MedWin vagtlægesystem Brugervejledning

Farveskalaer anvendes til at præsentere positionsbestemte data (GPS-data) i farvelagte intervaller.

Affine - et krypteringssystem

Brugervejledning til udfyldelse og udstedelse af Europass Mobilitetsbevis i Europass Mobilitetsdatabasen

POLITIETS TRYGHEDSINDEKS

Algebra. Denition. Signatur: et antal sorter eller typer: (simple eller strukturerede). et antal konstantsymboler med type, og

ProjectWise Databasen - Hvad kan jeg finde?

Kapitel 9. Selvvurderet helbred, trivsel og sociale relationer

Databasesystemer, forår 2005 IT Universitetet i København. Forelæsning 2: Relationer og SQL. 10. februar Forelæser: Rasmus Pagh

Regler for puljeturneringer

RUTruteplanlægningsvejledning. Folkekirkens Nødhjælp Sogneindsamling 2015

Cochrane Library Vejledning

Air Crash Booking System

Brugervejledning. Administration af egen mailkonto - SDNMail. Computer Sciences Corporation

Transkript:

Relationel Algebra og SQL Indholdsfortegnelse Relationel Algebra og SQL...1 Indholdsfortegnelse...1 De oprindelige mængdeoperationer...2 1. UNION (foreningsmængde)...2 2. INTERSECTION (fællesmængde)...2 3. DIFFERENCE (differensmængde)...2 4. PRODUKT (kartesisk produkt)...3 RESTRIKTION, SELEKTION (udvælgelse)...3 PROJEKTION...4 JOIN (samling)...4 DIVISION...5 SQL Side 1 af 5

De oprindelige mængdeoperationer 1. UNION (foreningsmængde) To mængder forenes til en foreningsmængde. Alle rækker (tupler) i den ene tabel (relation) forenes med alle rækker i den anden tabel. Rækkerne i de to tabeller skal være af samme slags. from UNION from ; 2. INTERSECTION (fællesmængde) Fællesmængden fra to mængder er de elementer, som findes både i den ene og i den anden mængde. SELECT m.afdnr, m.personnr FROM m, f WHERE m.afdnr = f.afdnr AND m.personnr = f.personnr; 3. DIFFERENCE (differensmængde) Ved at trække to mængder fra hinanden, fås mængdedifferencen mellem dem. Forekomsterne i begge mængder skal være af samme slags. FROM f WHERE not EXISTS ( FROM m WHERE m.afdnr = f.afdnr AND m.personnr = f.personnr); Det modsatte fra eksemplet med fællesmængde. Dvs. at mængdedifferencen udgøres af de formænd som også er mer, men som ikke er formænd og mer i samme afdeling. SQL Side 2 af 5

4. PRODUKT (kartesisk produkt) Produktet mellem to mængder er mængden af ordnede par, hvor det ene element stammer fra den ene mængde, og det andet element stammer fra den anden mængde. FROM afdeling, ; Formand Afdeling AfdNr PersonNr AfdNr AfdNavn 1 7 1 Håndbold 2 3 2 Fodbold 3 1...... Formand Afdeling AfdNr PersonNr AfdNr AfdNavn 1 7 1 Håndbold 1 7 2 Fodbold 2 3 1 Håndbold 2 3 2 Fodbold 3 1 1 Håndbold 3 1 2 Fodbold............ RESTRIKTION, SELEKTION (udvælgelse) Finder de forekomster, der opfylder en eller flere logiske betingelser. FROM post WHERE distrikt LIKE 'O%' AND distrikt <> Odense; Selektion Post PostNr Distrikt 6476 Otterup 6565 Ollerup 6477 Ovre SQL Side 3 af 5

PROJEKTION Undersøger de søjler (attributter), der er interesse for. SELECT fornavn FROM person; Projektion Person Fornavn Helge Tove Poul... JOIN (samling) Samling af forekomster fra flere mængder i én mængde. Udtrækket er kombineret med selektion og evt. projektion, dvs. et kartesisk produkt med restriktioner FROM afdeling a, f, person p WHERE a.afdnr = f.afdnr AND f.personnr = p.personnr; Den følgende (ækvivalente) SQL-sætning er Access bud på at lave en joinforbindelse: FROM afdeling a INNER JOIN ( f INNER JOIN person p ON f.personnr = p.personnr) ON a.afdnr = f.afdnr; I Access kan man bruge en INNER JOIN-handling i alle FROM-delsætninger. Dette er den mest almindelige type joinforbindelse. Indre joinforbindelser kombinerer poster fra to tabeller, når der er tilsvarende værdier i et felt, der er fælles for begge tabeller. Man kan bruge INNER JOIN sammen med tabellerne Afdeling og Medlem til at vælge alle merne i en afdeling. Hvis man derimod vil vælge alle afdelinger (selvom nogle ikke har tilknyttet mer) eller alle mer (selvom nogle ikke er tilknyttet en afdeling), kan man benytte en LEFT JOIN- eller RIGHT JOINhandling til at oprette en ydre joinforbindelse. Venstre ydre joinforbindelser medtager alle poster fra den første (venstre) af de to tabeller, selvom der ikke findes tilsvarende værdier for poster i den anden (højre) tabel, og man kan anvende en RIGHT JOIN-handling til at oprette en højre ydre joinforbindelse. Denne SQL Side 4 af 5

medtager alle posterne fra den anden (højre) af de to tabeller, selv om der ikke findes tilsvarende værdier for poster i den første (venstre) tabel. DIVISION R S R S Udvælger alle (kvotient) forekomster i en mængde (dividend), der er relateret til samtlige værdier i en anden mængde (divisor). SELECT distrikt, personnr, COUNT(*) Rest FROM GROUP BY personnr HAVING COUNT(*) = (SELECT COUNT(*) FROM afdeling); SQL Side 5 af 5