Frågespråk mot relationsmodellen
|
|
- Karolina Eliasson
- för 7 år sedan
- Visningar:
Transkript
1 HUND Mindy Ossi Frågespråk mot relationsmodellen Relationsalgebra Relationsalgebra Primtiva operatorer projektion π selektion σ union differens - kryssprodukt X Med hjälp av dessa operatorer kan andra (icke-primitiva) operatorer definieras: Icke-primitiva operatorer theta-join θ ekvi-join naturlig join X snitt division Tilldelning := Relationsalgebran är sluten: R op R 2 R relation relation relation ((R op R 2) op R ) op R 4 Tar en eller två tabeller som argument (indata). Producerar en ny tabell som resultat! 2
2 Projektion π - Unär operator = tar en tabell som indata - π, 2,...n (Relationsnamn) Vertikal delmängd av attribut, Man väljer ut ett antal kolumner attribut - π, Lön attribut (Relationsnamn) Omordning av attribut möjligt via π π Lön, (NSTÄLLD) Lön Per Kvist o Gren Sten Rot Nils Hed Eva erg Selektion σ - Unär operator Horisontelll delmängd av rader Man väljer ut ett antal rader baserat på något villkor σ villkor (Relationsnamn) Enkelt villkor: Kolumn θ kolumnvärde Kolumn θ kolumn där θ {=,, <, >,, } σ. Chef= Eva erg (NSTÄLLD) kolumn kolumn-värde Lön Chef vd Per Kvist 000 Eva erg Parfym o Gren Eva erg Parfym Nils Hed 0000 Eva erg Skor Eva erg 000 Eva erg Parfym 2. σchef=(nställd) Lön Chef vd kolumn kolumn Eva erg 000 Eva erg Parfym Sammansatt villkor: villkor operator villkor där operator {NOT, ND, OR}. Chef= Eva erg ND Lön>20000 ( NSTÄLLD ).σ Lön Chef vd Nils Hed 0000 Eva erg Skor 4 Eva erg 000 Eva erg Parfym 2
3 Kartesisk produkt (eller ibland * ) ska tolkas som alla rader i kombinerade med alla rader i m n m n a b c y a a y b b y c c y Kartesisk produkt, ett eempel till NSTÄLLD NSTÄLLD VDELNING Lön Chef vd namn Våning Per Kvist 000 Eva erg Parfym Leksaker Per Kvist 000 Eva erg Parfym Livsmedel Per Kvist 000 Eva erg Parfym Parfym Per Kvist 000 Eva erg Parfym Skor Per Kvist 000 Eva erg Parfym Trädgård Och så vidare på samma sätt... Eva erg 000 Eva erg Parfym Leksaker Eva erg 000 Eva erg Parfym Livsmedel Eva erg 000 Eva erg Parfym Parfym Eva erg 000 Eva erg Parfym Skor Eva erg 000 Eva erg Parfym Trädgård Totalt har NSTÄLLD VDELNING 2 st rader! (NSTÄLLD har rader och VDELNING har rader = totalt * st rader). 6
4 JOIN θ Kombinerar två tabeller och väljer ut endast de radkombinationer som uppfyller ett villkor. Typer av JOIN: Theta-JOIN Equi-JOIN Natural JOIN och andra 7 θ JOIN ( theta-join ) där θ {=,, <, >,, } nställd nställd.vd nställd.vd = vdelning.vd vdelning.vd vdelning NSTÄLLD Pia Mia Ken vd VDELNING vd röd Ost Vin NSTÄLLD X VDELNING nställd.vd = vdelning.vd nst. vd. vd vd namn Pia Mia Ken röd Vin Vin Här bildas den nya tabellen genom att matcha kolumnvärden (här kolumen vd) från två tabeller. Om jämförelsevillkoret är = talar man om en equi-join. Observation: σ θ-villkor ( ) Α X θ-villkor 8 4
5 NTURL JOIN nställd NTURL JOIN vdelning nställd vdelning NSTÄLLD vd VDELNING vd NSTÄLLD vd X VDELNING namn Pia Mia Ken röd Ost Vin Pia Mia Ken röd Vin Vin Kombinerar två tabeller och väljer endast ut de radkombinationer som har samma värde på alla kolumner med samma namn (och datatyp). Dessutom tas bara EN av varje kolumn som förekommer i båda tabellerna med! 9 NULL Null-värden kan ge problem vid join. NSTÄLLD VDELNING Pnr nst.nr dress vd.nr vdelning vd.nr yv. Forskning Solsv. 6 Försäljn. yv. dmin yv.7 X Solv. 7 NULL Y yv. NULL En join mellan anställda över vd.nr kommer att resultera i att de två sista anställda inte kommer med. eroende på omständigheterna kan detta vara vad som avsågs eller felaktigt. Pnr nst.nr dress vd.nr vdelning vd.nr yv. Forskning Solsv. 6 Försäljn. yv. Forskning yv.7 dmin 0
6 OUTER JOIN (s) id Ossi Karo Mindy Pudel NULL id Emir Lady Kaninta NULL X.=. id. id. Ossi (LEFT) OUTER (EQUI-) JOIN ON id. id. Ossi Karo Pudel NULL NULL Mindy NULL NULL NULL (RIGHT) OUTER (EQUI-) JOIN ON id. id. Ossi NULL NULL Emir Kaninta NULL NULL Lady NULL (FULL) OUTER (EQUI-) JOIN ON id. id. Ossi Karo Pudel NULL NULL Mindy NULL NULL NULL NULL NULL Emir Kaninta NULL NULL Lady NULL Mängdoperationer Union Snitt/Intersection Differens/Minus 2 6
7 Union compatibility Somliga av de relationsalgebraiska operatorerna kräver att de tabeller som de opererar på ska vara unionskompatibla. Detta betyder att de två tabellerna måste ha: samma grad (lika många attribut/kolumner) attribut som motsvarar varandra måste ha samma domän (datatyp) ( attributen som motsvarar varandra måste heta likadant, viktigt inför SQL men även här med avseende på namngivning av kolumner) UNION, SNITT och DIFFERENS är unionskompatibla operatorer. Ska man ta unionen av två tabeller måste tabellerna ha lika många kolumner och de par av kolumner som svarar mot varandra måste vara av samma typ (ha samma domän). UNION?.a.b.a.b a a a 2 a y b 2 b UNION?.a.b.a.b.c a a m a 2 a 2 n b 2 b 2 o UNION!.a.b a a y b.a.b b a m b UNION Kombinerar rader från två tabeller och tar med alla rader från båda tabellerna. Dubbletterna tas med bara en gång. Visa alla hundar (hund-rader) som ingår i antingen tabell eller tabell : Karo Mindy Ossi Pudel Dvärgta Emir Lady Morris Schäfer Welsh Corgie lla rader som finns i plus alla rader som finns i Karo Mindy Ossi Emir Lady Morris Pudel Dvärgta Schäfer Welsh Corgie Observation: Β = Β Α 4 7
8 Karo Mindy Ossi Pudel Dvärgta Emir Lady Morris UNION Visa alla hundar (hund-rader) som är taar i antingen tabell eller tabell : σ = σ = σ = = (σ =()) (σ =()) Schäfer Welsh Corgie Karo Emir SNITT (INTERSECT) Kombinerar rader från två tabeller och tar med alla rader som förekommer i båda tabellerna. Dubbletterna tas med bara en gång. Visa alla hundar (hund-rader) som ingår i ÅDE tabell och tabell : Karo Mindy Ossi Pudel Dvärgta Emir Lady Morris Schäfer Welsh Corgie lla rader som finns i både och Observation I : Β = Β Α 6 8
9 SNITT Visa taar som ingår i både tabell och tabell : σ = = σ = = (σ = = ()) (σ = = ()) Karo Mindy Ossi Pudel Dvärgta Emir Lady Morris Schäfer Welsh Corgie 7 Differens - Kombinerar två tabeller och tar med alla rader som finns i den första men inte i den andra. Visa alla hundar (hund-rader) som finns i tabell men inte i tabell : - MINUS Karo Mindy Ossi Pudel Dvärgta Emir Lady Morris Schäfer Welsh Corgie MINUS Karo Mindy Pudel Ossi Dvärgta lla tupler som finns i men inte i Observation:
10 Tilldelning Kan användas för att dela upp stora komplea satser. Kan också användas för att ändra namn på en tabell och dess kolumner. Pers Person Pers2(id,name,length,weight,country) Person Pers och Pers2 kan (ska) användas i nya uttryck. Tilldelning kan möjliggöra återanvändning. 9 Tilldelning eller inte tilldelning Skriv ett relationsalgebraiskt uttryck som ger namn och lön för de anställda som arbetar på andra våningen. NSTÄLLD Metod I (flera steg): Rätt_avdelningar σ Våning=2 (VDELNING) Rätt_anställda NSTÄLLD X vd=namn Rätt_avdelningar Rätt_uppgifter_om_anställda π, Lön (Rätt_anställda) Metod II (ett enda långt relationsalgebraiskt uttryck): π, Lön (NSTÄLLD X vd=namn (σ Våning=2 (VDELNING))) 20 0
11 ändring ρ Kan också användas för att ändra namn på en tabell och dess kolumner. Kan också användas för att ändra kolumnernas ordning. ρ Pers Pers Person ρ Pers4(id,name,length,weight,country) Person Med hjälp av tilldelningsoperatorn och projektionsoperatorn kan man åstadkomma samma resultat. 2 CR Licencenr Colour Owner C2 lue Lisa Red Lisa 222 Red Oscar MMM Yellow en Eempeldatabas PERSON Pname Weight Pddress Lisa Solv. 2 Oscar 6 Solv. en 7 ygatan WORKS_T Person Company Lisa Telia Oscar Telia en Ramirent Oy en Telia COMPNY CName Founded Homepage Telia Ramirent Oy
12 Differens fortsättning... Differens är användbart för frågor av typ: Ta fram alla som inte gjort ngt/helt saknar en viss egenskap etc. T e Ta fram alla personer som inte har någon bil CR Licencenr Colour Owner C2 lue Lisa Red Lisa 222 Red Oscar MMM Yellow en Notera att Owner utgör främmande nyckel mot PERSON tabellen PERSON. PName Weight Paddress Lisa Solv. 2 Oscar 6 Solv. en 7 ygatan. Skapa en relation som som innehåller alla personer som äger en bil: CR_OWNER(Pname) := π Owner (CR) 2. Dra sen bort denna mängd tupler från relationen PERSON (dvs mängden av alla personer): HVE_NO_CR := π PName (PERSON) - CR_OWNER Observera att man måste projicera ut PName från PERSON och Owner Från CR eftersom differens kräver att de ingående relationerna ska vara unionskompatibla! 2 Differens övning Skriv ett relationsalgebraiskt uttryck som tar fram alla personer som inte ägt någon röd bil: CR Licencenr Colour Owner C2 lue Lisa Red Lisa 222 Red Oscar MMM Yellow en Notera att Owner utgör främmande nyckel mot PERSON tabellen PERSON. PName Weight Paddress Lisa Solv. 2 Oscar 6 Solv. en 7 ygatan. Skapa en relation som som innehåller alla som ägt en röd bil 2. Dra sen bort denna relation från relationen PERSON (dvs mängden av alla personer = alla raderna i tabellen PERSON). Tänk på att när man tar en relation minus en relation måste de två relationerna vara unionskompatibla! 24 2
13 ggregerings-/grupperingsfunktion ƒ För att utföra en eller flera funktioner på hela tabellen: ƒ aggregatfunktion(kolumn)(tabell) Resulterar i ett värde per funktion. För att utföra en eller flera funktioner på radgrupper: grupperingskolumn(er) ƒ aggregatfunktion(kolumn)(tabell) Grupperar raderna så att alla rader i varje grupp har samma värde på de valda kolumnerna (som anges till vänster om symbolen). Resulterar i ett värde per funktion och en rad per grupp. 2 ggregat-funktioner i relationsalgebra: MIN, MX, COUNT, SUM,... PERSON Pname Weight Pddress Lisa Solv. 2 Oscar 6 Solv. en 7 ygatan WORKS_T Person Company Lisa Telia Oscar Telia en Ramirent Oy en Telia G ggregatfunktion(kolumn) (TELL) Vilket är den minsta vikten i tabellen PERSON? G MIN(Weight)(Person) Vad är summan av alla personers vikter? G SUM(Weight)(Person) 26
14 ggregat-funktioner i relationsalgebra: MIN, MX, COUNT, SUM,... PERSON Pname Weight Pddress Lisa Solv. 2 Oscar 6 Solv. en 7 ygatan WORKS_T Person Company Lisa Telia Oscar Telia en Ramirent Oy en Telia Grupperande attribut G ggregatfunktion(kolumn) (TELL) Hur många anställda har varje företag? Company G COUNT(Person) (WORKS_T) Hur många rader finns det i tabellen WORKS_T? G COUNT(Person) (WORKS_T) Hur många förtag har fler än anställd? TEMP(Företag, ntal):= Company G COUNT(Person) (WORKS_T)) SVR := σ ntal > (TEMP) 27 R y y m n o m n m n o Division (Kvot) S m n o R S tt dela tabellen R med tabellen S innebär följande: För varje kombination av värden i tabell R på de kolumner som inte finns i tabell S, ta med de värden som finns i kombination med alla värden i alla rader i tabell S. Vilka kolumner kommer resultatet att innehålla: Jo R - S dvs de kolumner som förekommer i R men inte i S. I vårt fall blir det kolumnen i R. Vilka kolumn-värden kommer med i kolumnen? Jo alla de -värden i R som är relaterade till LL - värden i S. I vårt fall är detta sant för -värden och. Dvs har ett -värde för både m,n och o. Det samma gäller. -värdet y kommer inte med eftersom det saknar ett -värde, nämligen o. 28 4
15 R S 2 a 2 a a 2 a 2 a a 2 a 2 a 2 Resultat Kvot, forts. R(,..., n, n+,..., n+m) S( n+,..., n+m) R S = Resultat(,..., n) Varje,... n - del av en R-tuppel ( huvudet ) har n+,... n+m - del ( svansen ) som är lika med var och en av S-tupplerna, till vänster är n= och m=2. För att kunna ta kvoten mellan två relationer måste nämnarens kolumner uppfylla kraven på unionskompatibilitet med en delmängd av täljarens kolumner (mao nämnaren måste vara lika med svansen i täljaren) 29 R y y m n o m n m n o Kandidatvärden y S m n o Kvot kan skrivas om i termer av andra relationsalgebraiska operatorer: Kandidatvärden π (R) Kombinering π ((Kandidatvärden X S) - R) Kvoten Kandidatvärden - Kombinering Kandidatvärden X S m n o y m y n y o m n o Kombinering y Kvoten R S 0
16 Kvot fortsättning... Kvot är användbart för frågor av typ: Ta fram alla som gjort allt/har alla egenskaperna. T e Ta fram de företag som har alla personer anställda (egentligen lika med uppgiften att ta fram alla de kolumn-värden i tabellen WORKS_T som är relaterade till (= förekommer i en rad som har en främmande nyckel mot) alla rader i tabellen PERSON ) PERSON Pname Weight Pddress Lisa Solv. 2 Oscar 6 Solv. EMPLOYEES (Person) := π Pname (PERSON) en 7 ygatan HVE_THEM_LL := WORKS_T EMPLOYEES WORKS_T Person Company Lisa Telia Oscar Telia en Ramirent Oy en Telia COMPNY CName Founded Homepage Telia Ramirent Oy Tumregler Tänk ett steg i taget (en operation i taget). Kontrollera alltid (inför varje operation) vilka kolumner som ingår i tabellerna. Går det överhuvudtaget att använda en viss operation, är tabellerna unionskompatibla t e? Om inte, fia till unionskompatibilitet, t e genom att använda tilldelning och projektion! Tänk på i vilken ordning operationerna utförs. Styr med parenteser. nvänd tilldelning för att dela upp stora satser i mindre delar. nvänd projektioner för att ta bort onödiga kolumner. Försiktigt dock att inte ta bort kolumner som ni behöver senare. 2 6
IT i Organisationer och Databasteknik. Frågespråk mot relationsmodellen
IT i Organisationer och Databasteknik HUND Namn Ras Mindy Ossi Frågespråk mot relationsmodellen Relationsalgebra SQL 1 Relationsalgebra Primtiva operatorer projektion π selektion σ union differens - kryssprodukt
Läs merInformationssystem och Databasteknik. Frågespråk mot relationsmodellen
Informationssystem och Databasteknik HUND Namn Ras Mindy Tax Ossi Tax Frågespråk mot relationsmodellen Relationsalgebra SQL 1 Relationsalgebra Primtiva operatorer projektion π selektion σ union differens
Läs merInformationssystem och Databasteknik, 2I-1100 HT2001. Relationsalgebra. Relationsalgebran är sluten: R 1 op R 2 R 3.
Primtiva operatorer projektion π selektion σ union differens - kryssprodukt X Relationsalgebra Tilldelning := Relationsalgebran är sluten: Med hjälp av dessa operatorer kan andra (icke-primitiva) operatorer
Läs merMODELLER OCH SPRÅK FÖR RELATIONSDATABASER: Relationsalgebra, Relationskalkyl (Tuple calculus) & SQL
MODELLER OCH SPRÅK FÖR RELATIONSDATABASER: Relationsalgebra, Relationskalkyl (Tuple calculus) & SQL Ted Codd 970 - klassisk artikel: The relational model of data - DATASTRUKTUR - OPERATIONER - INTEGRITY
Läs merIT i organisationer och Databasteknik, 2I-1033 HT2002. Relationsalgebra. Relationsalgebran är sluten: R 1 op R 2 R 3.
Primtiva operatorer projektion π selektion σ union differens - kryssprodukt X Relationsalgebra Tilldelning := Relationsalgebran är sluten: Med hjälp av dessa operatorer kan andra (icke-primitiva) operatorer
Läs merRelationsdatabasdesign 2I-4067 HT99. Relationsalgebra. som resultat!
Relationsalgebra Relationsalgebra Relationsalgebran r ett formellt sprâk fˆr att extrahera data ur relationer. SprÂket r uppbyggt av ett litet antal operatorer. Tar en eller två tabeller De primitiva operatorerna
Läs merDatabaser - Design och programmering. Operationer i relationsalgebra. Att söka ut data. Exempel DBschema. Att plocka ut data, forts
Databaser Design och programmering Relationsalgebra den matematiska grunden för att bearbeta data representerad i relationsmodellen Operationer i relationsalgebra Två typer av operationer: Operationer
Läs merEMPS(NAME, SALARY, DEPT)
Databaser Design och programmering Relationsalgebra den matematiska grunden för att bearbeta data representerad i relationsmodellen Operationer i relationsalgebra Två typer av operationer: Operationer
Läs merFöreläsning 5: Relationsmodellen
Föreläsning 5: Relationsmodellen DVA234 Databaser IDT Akademin för Innovation, Design och Teknik Innehåll Föreläsningens mål: Att ge en överblick över hur relationsmodellen fungerar Relationsmodellen Relationsalgebra
Läs merRelationsalgebra. Varför behöver jag lära mig relationsalgebra?!
Relationsalgebra 1 Varför behöver jag lära mig relationsalgebra?! Relationsmodellen är den datamodell som används i de flesta moderna databassystemen Data beskrivs och lagras som relationer, dvs. som ett
Läs merDatabasspråket SQL - online.
Databaser, design och programmering Databasspråket SQL - online. Innehåll: Viktiga kommandon och konstruktioner i SQL, både DDL och DML. Utgångspunkt: en databas om ett varuhus (The Jonson Brothers Company
Läs merGrunderna i SQL del 1
Grunderna i SQL del 1 1. SELECT-frågor 2. SELECT 3. WHERE 4. ORDER BY 5. Inre join 6. Yttre join 7. Andra typer av join 8. Union 9. Aggregatfunktioner 10. Gruppera och summera Kap. 3 Kap. 4 Kap. 5 utom
Läs merDatabasspråket SQL - online.
Databaser, design och programmering Databasspråket SQL - online. Innehåll: Viktiga kommandon och konstruktioner i SQL, både DDL och DML. Utgångspunkt: en databas om ett varuhus (The Jonson Brothers Company
Läs merTentamen Databasmetodik DB:DSK/FK/DVK/ATD/SP/EIT mfl. äldre kurstillfällen 8 augusti 2013 kl. 9-13
Institutionen för Data- och Systemvetenskap IT-universitetet Maria Bergholtz Tentamen DB:DSK/FK/DVK/ATD/SP/EIT mfl. äldre kurstillfällen 8 augusti 203 kl. 9-3 Inga hjälpmedel tillåtna (syntaxsammanställning
Läs merTentamen Databasmetodik DB:DSK/FK/DVK/ATD/SP/EIT mfl. äldre kurstillfällen Lördag 8 juni kl
Institutionen för Data- och Systemvetenskap IT-universitetet Maria Bergholtz Tentamen DB:DSK/FK/DVK/ATD/SP/EIT mfl. äldre kurstillfällen Lördag 8 juni kl. 10-14 Inga hjälpmedel tillåtna (syntaxsammanställning
Läs merFöreläsning 4 Dagens föreläsning går igenom
Databasbaserad publicering Föreläsning 4 1 Föreläsning 4 Dagens föreläsning går igenom E/R-modellen, fortsättning Frågor till flera tabeller samtidigt Många-till-många-relationer Läs om E/R-diagram i kapitel
Läs merVad är en databas? Databaser. Relationsdatabas. Vad är en databashanterare? Vad du ska lära dig: Ordlista
Databaser Vad är en databas? Vad du ska lära dig: Använda UML för att modellera ett system Förstå hur modellen kan översättas till en relationsdatabas Använda SQL för att ställa frågor till databasen Använda
Läs merTentamen. Databasmetodik Lördag 27 september 2014 kl
Inst. för Data- och Systemvetenskap SU/KTH Tentamen EIT:DB, SP:DB, DVK:DB, ATD:DB, FK:DB, DSK:DB Ska även användas av äldre kurstillfällen, t ex för IV1018, IV1003, ITK3:DB, ITK1:DB, DSV1:DB mfl. Databasmetodik
Läs merDIVISIONSEXEMPEL RELATIONSALGEBRA OCH SQL. r s använder vi för att uttrycka frågor där ordet alla figurerar:
DIVISIONSEXEMPEL RELATIONSALGEBRA OCH SQL r s använder vi för att uttrycka frågor där ordet alla figurerar: Ex. Vilka personer har stamkundskort vid ALLA klädesbutiker i stad X? Vilka personer har bankkonto
Läs merIdag. 1. Från modell till databasstruktur. 2. Prata med databaser (frågepsråket SQL)
Idag 1. Från modell till databasstruktur 2. Prata med databaser (frågepsråket SQL) DD1370 (Föreläsning 3) Databasteknik och informationssystem 7,5 hp Hösten 2008 1 / 22 Från verklighet via modell till
Läs merFrån verklighet via modell till databas. Idag. Testa reglerna på varuhusmodellen. Från verklighet via modell till databas
Idag 1. Från modell till databasstruktur Från verklighet via modell till databas När vi analyserat den värld vi vill representera i en databas har vi tagit med alla möjliga kopplingar och beskrivit dem
Läs merSQL. Structured Query Language. Frågespråk för att används för. Kommandon. data åtkomst data manipulation
SQL Structured Query Language Frågespråk för att används för data åtkomst data manipulation Kommandon Lägga in ny data, INSERT Ändra data, UPDATE Radera data, DELETE Hämta data, SELECT mfl 2005-10-13 Gk/ÖK:ITO,
Läs merFrågeoptimering. Frågeoptimering kapitel 14
Frågeoptimering kapitel 14 Frågeoptimering sid Introduktion 1 Transformering av relationsuttyck 4 Kataloginformation för kostnadsestimering Statisk information för kostnadsestimering Kostnadsbaserad optimering
Läs merProgramdesign, databasdesign. Databaser - Design och programmering. Funktioner. Relationsmodellen. Relation = generaliserad funktion.
Databaser Design och programmering Relationsmodellen definitioner ER-modell -> relationsmodell nycklar, olika varianter Programdesign, databasdesign Databasdesign Konceptuell design Förstudie, behovsanalys
Läs merVad är en databas? Databaser. Relationsdatabas. Vad är en databashanterare? Vad du ska lära dig: Ordlista
Databaser Vad är en databas? Vad du ska lära dig: Använda UML för att modellera ett system Förstå hur modellen kan översättas till en relationsdatabas Använda SQL för att ställa frågor till databasen Använda
Läs merInst. för Data- och Systemvetenskap SU Maria Bergholtz. Tentamen. 21/ kl Inga hjälpmedel är tillåtna (annat än ordbok).
Inst. för Data- och Systemvetenskap SU Maria Bergholtz Tentamen 2/3 205 kl. 4 8 Inga hjälpmedel är tillåtna (annat än ordbok). Skall även användas som omtentamen för DB:EIT/DSK/FK samt äldre databaskurser.
Läs merTentamen EIT:DB Databastmetodik 11/1 2013 kl. 13 17 + Lösningsförslag
Tentamen EIT:DB Databastmetodik 11/1 2013 kl. 13 17 + Lösningsförslag Inga hjälpmedel är tillåtna (annat än ordbok). Kort syntaxsamling för delar av SQL samt lista med symboler för relationsalgebraiska
Läs merTentamen i Databasteknik
Tentmen i Dtsteknik lördgen den 22 oktoer 2005 Tillåtn hjälpmedel: Allt upptänkligt mteril Använd r frmsidn på vrje ld. Skriv mx en uppgift per ld. Motiver llt, dokumenter egn ntgnden. Oläslig/oegriplig
Läs merKarlstads Universitet, Datavetenskap 1
2003-01-20 DAV B04 - Databasteknik 2003-01-20 KaU - Datavetenskap - DAV B04 - MGö 26 Relationsmodellen En formell teori som baserar sig på (främst) mängdlära predikatlogik Föreslogs av E.F Codd 1970 i
Läs merLösningsförslag till Tentamen,
Institutionen för Data- och Systemvetenskap SU/KTH Maria Bergholtz och Paul Johannesson Lösningsförslag till Tentamen, 022 2I-00 Informationssystem och databasteknik För att erhålla betyget tre räcker
Läs merTabeller och kolumner SQL. Lägga till en ny post. Lägga till en ny post
SQL Structured Query Language Frågespråk för att används för data åtkomst data manipulation Kommandon Lägga in ny data, INSERT Ändra data, UPDATE Radera data, DELETE Hämta data, SELECT mfl Rader Tabeller
Läs merRelationsmodellen och syntetisk databasdesign
Relationsmodellen och syntetisk databasdesign Den teoretiska grunden för relationsdatabaser Från konceptuellt schema till databas Relationsmodellen Bil Ägare En relationsdatabas är en databas som uppfattas
Läs merGrunderna i SQL del 1
Grunderna i SQL del 1 1. SELECT-frågor 2. SELECT 3. WHERE Kap. 3 4. ORDER BY 5. Inre join 6. Yttre join 7. Andra typer av join Kap. 4 8. Union 9. Aggregatfunktioner 10. Gruppera och summera Kap. 5 utom
Läs merTentamen i Databasteknik
Tentamen i Lördagen den 21 oktober 2006 Tillåtna hjälpmedel: Allt skrivet material Använd bara framsidan på varje blad. Skriv max en uppgift per blad. Motivera allt, dokumentera egna antaganden. Oläslig/obegriplig
Läs merGrunderna för relationsmodellen!
Grunderna för relationsmodellen! 1 Varför behöver jag lära mig relationsmodellen?! Relationsmodellen är den totalt dominerande datamodellen i moderna databassystem Beskriver databaser som en mängd tabeller
Läs merDatabasspråket SQL - online.
Webprogrammering och databaser Fö 5 Databasspråket SQL - online. Innehåll: Viktiga kommandon och konstruktioner i SQL, både DDL och DML. Utgångspunkt: en databas om ett varuhus (The Jonson Brothers Company.
Läs merRelationsalgebra. Relationsalgebra består av en mängd operatorer som tar en eller två relationer som input och producerar en ny relation som resultat.
Database: Relationsalgeba 2-11 Relationsalgeba Relationsalgeba bestå av en mängd opeatoe som ta en elle två elatione som input och poducea en ny elation som esultat. De fundamentala opeationena ä unäa
Läs merDagens föreläsning. KTH & SU, CSC Databasteknik Föreläsning 10 sid 1
Dagens föreläsning Vad du skall komma ihåg från tidigare föreläsningar Optimering av frågor Algebraisk omformulering Kostnadsberäkningar Evaluering av frågor Algoritmer för relationsoperatorer Beräkning
Läs merVad du skall komma ihåg från tidigare föreläsningar. Dagens föreläsning. Evaluering av frågor. Data dictionary
Dagens föreläsning Vad du skall komma ihåg från tidigare föreläsningar Vad du skall komma ihåg från tidigare föreläsningar Optimering av frågor Algebraisk omformulering Kostnadsberäkningar Evaluering av
Läs merStructured Query Language (SQL)
Structured Query Language (SQL) Christer Stuxberg christer.stuxberg@im.uu.se Institutionen för Informatik och Media Översikt Introduktion Enkla frågor (queries) Hämta en specifik kolumn Sök Sammanfattning
Läs merDatabasspråket SQL - online.
Databaser, design och programmering Databasspråket SQL - online. Innehåll: Viktiga kommandon och konstruktioner i SQL, både DDL och DML. Utgångspunkt: en databas om ett varuhus (The Jonson Brothers Company
Läs merRelationsmodellen. Relations modellen är idag den mest änvända datamodellen för kommersiella
Relationsmodellen 2-1 Relationsmodellen Relations modellen är idag den mest änvända datamodellen för kommersiella applikationer. Relationsdatabasstruktur En relationsdatabas består av en samling tabeller,
Läs merLite om räkning med rationella uttryck, 23/10
Lite om räkning med rationella uttryck, / Tänk på att polynom uppför sig ungefär som heltal Summan, differensen respektive produkten av två heltal blir ett heltal och på motsvarande sätt blir summan, differensen
Läs merInformationssystem och Databasteknik
Informationssystem och Databasteknik Föreläsning 4 Relationsmodellen Från konceptuell modell till relationsdatabasschema Inför projektarbetet: - sammansmältning av flera överlappande modeller av samma
Läs merDatabasspråket SQL - online.
Webprogrammering och databaser Fö 5 Databasspråket SQL - online. Innehåll: Viktiga kommandon och konstruktioner i SQL, både DDL och DML. Utgångspunkt: en databas om ett varuhus (The Jonson Brothers Company.
Läs merNORMALISERING. Mahmud Al Hakim
NORMALISERING Mahmud Al Hakim mahmud@webacademy.se 1 SCHEMA Schema eller databasschema är en beskrivning av vilka data som kan finnas i en databas, oberoende av vilka data (innehållet) som råkar finnas
Läs merFrågespråk och SQL. nikos dimitrakas rum 2423
Frågespråk och SQL nikosd@kth.se 08-161295 rum 2423 Connolly/Begg (3rd edition) Kapitel 5, 6 (och lite överallt) (4.1, 4.2) (4th edition) Kapitel 5, 6 (och lite överallt) (4.1, 4.2) (5th edition) Kapitel
Läs merKonceptuella datamodeller
Databasdesign Relationer, Nycklar och Normalisering Copyright Mahmud Al Hakim mahmud@webacademy.se www.webacademy.se Konceptuella datamodeller Om man ska skapa en databas som beskriver en del av verkligheten
Läs merI kursen i endimensionell analys är mängden av reella tal (eng. real number), R, fundamental.
Lunds tekniska högskola Datavetenskap Lennart ndersson Föreläsningsanteckningar EDF10 4 Mängder 4.1 Motivering Mängden är den mest grundläggande diskreta strukturen. Nästan alla matematiska begrepp går
Läs merDenna uppdelning är ovanlig i Sverige De hela talen (Både positiva och negativa) Irrationella tal (tal som ej går att skriva som bråk)
UMEÅ UNIVERSITET Institutionen för matematik och matematisk statistik Olof Johansson, Nina Rudälv 2006-10-24 SÄL 1-10p Avsnitt 1.1 Grundläggande begrepp Detta avsnitt behandlar de symboler som används
Läs merTentamen i Databasteknik
Tentamen i Databasteknik Tisdagen den 15 mars 2010 Tillåtna hjälpmedel: Allt skrivet material och räknedosa Använd bara framsidan på varje blad. Skriv max en uppgift per blad. Motivera allt, dokumentera
Läs mer9. Between 10. Group by 11. Aggregatfunktionerna max, min, sum och avg 12. Nästlade sökningar
FÖ 8: Databaskursen 1. SQL 2. Utsökningar mot en tabell 3. Od Order by 4. Funktionerna upper, lower och initcap 5. Konkatenering 6. Kolumnalias 7. Distinct 8. Hantera nullvärden med nvl-funktionen 9. Between
Läs merDatabaser - Design och programmering. Relationsmodellen. Relationer - som tabeller. Relationer som tabeller. Alternativa notationer: Relationsschema
Databaser Design och programmering Relationsmodellen definitioner ER-modell -> relationsmodell nycklar, olika varianter Relationsmodellen Introducerades av Edward Codd 970 Mycket vanlig Stödjer kraftfulla
Läs merKarlstads Universitet, Datavetenskap 1
* * * * DAV B04 - Databasteknik! "# $ %'&( ) KaU - Datavetenskap - DAV B04 - MGö 132 Riktlinjer när man vill skapa en databas 1) Designa så att det är lätt att förstå innebörden. Kombinera inte attribut
Läs merLinjärt minne. Sammanhängande minne är ej flexibelt. Effektivt
Binära träd (forts) Ett binärt träd kan lagras i ett enda sammanhängande minne Roten har index 1 Vänster barn till nod i har index 2*i Höger barn till nod i har index 2*i + 1 Föräldern till nod i har index
Läs mer(N) och mängden av heltal (Z); objekten i en mängd behöver dock inte vara tal. De objekt som ingår i en mängd kallas för mängdens element.
Grunder i matematik och logik (2017) Mängdlära Marco Kuhlmann 1 Grundläggande begrepp Mängder och element 2.01 En mängd är en samling objekt. Två standardexempel är mängden av naturliga tal (N) och mängden
Läs merExempel-Tentamen III
Institutionen för Data- och Systemvetenskap IT-universitetet Maria Bergholtz Exempel-Tentamen III Inga hjälpmedel tillåtna (syntaxsammanställning behövs inte på denna tentamen) Skriv bara på en sida av
Läs merLösningar till tentamen i EDAF75
Lösningar till tentamen i EDAF75 4 april 2018 Lösning 1 (a) Här är ett förslag till E/R-modell: Det finns flera rimliga alternativa sätt att modellera, så du behöver inte vara orolig bara för att du inte
Läs merObligatorisk uppgift 5
(5 oktober 2018 Symbolisk kalkylator 1 ) Obligatorisk uppgift 5 En kalkylator som hanterar uttryck symboliskt dvs värden är uttryck inte bara tal. Uppgiften exemplifierar: objektorientering återanvändning
Läs merTentamen i Databasteknik
Tentamen i Onsdagen den 7 mars 2007 Tillåtna hjälpmedel: Allt skrivet material Använd bara framsidan på varje blad. Skriv max en uppgift per blad. Motivera allt, dokumentera egna antaganden. Oläslig/obegriplig
Läs merDatabaser. Vad du ska lära dig: Ordlista
Databaser Vad du ska lära dig: Ordlista Använda UML för att modellera ett system Förstå hur modellen kan översättas till en relationsdatabas Använda SQL för att ställa frågor till databasen Använda en
Läs merVad är en databas? Exempel på databaser: Databas = Organiserad samling och lagring av information.
Vad är en databas? Exempel på databaser: Kortregister på kontor Sjukvårdsjournal Bokregister på bibliotek Medlemsregister i en förening Kundregister på företag Telefonkatalogen Databas = Organiserad samling
Läs mer729G74 IT och programmering, grundkurs. Tema 2. Föreläsning 3 Jody Foo,
729G74 IT och programmering, grundkurs Tema 2. Föreläsning 3 Jody Foo, jody.foo@liu.se Föreläsningsöversikt Information i grafstrukturer Diskret matematik Relationer: kopplingar mellan mängder Funktioner
Läs mer08/11/13. Databasteknik och informationssystem DD1370 F3. Ett urval ur databasen bestäms av en SQL-fråga. Påminnelse: Deadline på tisdag
Påminnelse: Deadline på tisdag Databasteknik och informationssystem DD1370 F3 Petter Ögren Inlämningsuppgift 1 - Skall mailas in senast 23:59 på tisdag. - Redovisas på övningen på onsdag - Inspireras av
Läs merRelationskalkyl (RK)
1 Relationskalkyl (RK) Formellt frågespråk som är baserad på predikatkalkyl (logik) En formel i RK är icke-procedurell (deklarativ), dvs den specificerar vad som ska hämtas och inte hur Jämför med relationsalgebran
Läs merStructured query language (SQL)
Structured query language SQL) Varför SQL? SQL är ett standardspråk som är oberoende av databashanteringssystemen som finns på marknaden. Med andra ord kommer du kunna arbeta mot nästan alla sorters relationsdatabaser
Läs merFrågor att lösa med SQL mot databasen kursdb_sql Sida 1 av 5
Frågor att lösa med SQL mot databasen kursdb_sql Sida 1 av 5 1 Frågor mot en tabell och något selektionsvillkor. A Ta fram personnummer, namn, adress och postnummer på personer som bor i Solna! B Ta fram
Läs merÖvningar i SQL. SQLAccess.doc Ove Lundgren 2000-11-14
Övningar i SQL Övningar i SQL Använd Access för att öva SQL (= Structured Query Language) Skapa tabeller med SQL 1. Ny databas: SQLÖVNING Klicka: Frågor > Ny > Design > OK >Stäng > SQL Radera ordet SELECT.
Läs merIntroduktion C-programmering
Introduktion C-programmering Viktor Kämpe C Historik Utvecklades först 1969 1973 av Dennis Ritchcie vid AT&T Bell Labs. Högnivå språk med kontakt mot maskinvara. Ett utav de mest använda språken. 2 C Standarder
Läs merGrammatik. BNF-grammatik
Grammatik Objektorienterad modellering och diskreta strukturer / design Grammatik Reguljära uttryck klarar inte av att beskriva mängden av aritmetiska uttryck. Lennart Andersson Reviderad 2010 10 07 2010
Läs merSpråket Python - Del 1 Grundkurs i programmering med Python
Hösten 2009 Dagens lektion Ett programmeringsspråks byggstenar Några inbyggda datatyper Styra instruktionsflödet Modulen sys 2 Ett programmeringsspråks byggstenar 3 ETT PROGRAMMERINGSSPRÅKS BYGGSTENAR
Läs merDatabasteknik. Vad är. Vad är databaser bra till? data? föreläsare: Kjell Lindqvist. och NADA. databaser? och. vad är de bra för?
Databasteknik Vad är data? föreläsare: Kjell Lindqvist och NADA databaser? och vad är de bra för? och varför ska ni kunna något om dem? Copyright c NADA, KTH DBT, bild 1 Copyright c NADA, KTH DBT, bild
Läs merÖVNING 10 2NF Hästnamn, KursId, StartDatum, SlutDatum KursId NY! 3NF Hästnamn, Art, NY! NY! NY! NY! KursId, StartDatum, SlutDatum KursId NY!
ÖVNING 10 2NF HÄST (Hästnamn, Mankhöjd, Favoritmat, Art, Medelvikt, Spiltnummer, Bredd, Höjd) PERSON(Personnummer, Namn, Adress, Telefon) RIDKURS(KursId, StartDatum, SlutDatum, Ledare) KURS(KursId, Svårighetsgrad)
Läs mer07/11/14. Databasteknik och informationssystem DD1370 F2. Allmänna frågor. Är Lab0 svårbegriplig? Nu: Clickers. Är Kurswebben svårbegriplig?
Allmänna frågor Databasteknik och informationssystem DD1370 F2 Petter Ögren Är Kurswebben svårbegriplig? Är lab0 svårbegriplig? Är bonus-poängen tydliga? Har ni lyckats installera Open Office? Fungerar
Läs merRepetition C-programmering
Repetition C-programmering Viktor Kämpe C Historik Utvecklades först 1969 1973 av Dennis Ritchcie vid AT&T Bell Labs. Högnivå språk med kontakt mot maskinvara. Ett utav de mest använda språken. Repetition
Läs merTENTAMEN För kursen. Databasteknik. Ansvarig för tentamen: Anna Palmquist. Förfrågningar: Anslås inom 3 veckor
TENTAMEN För kursen DATUM: 2015-11-06 TID: 14 19 Ansvarig för tentamen: Anna Palmquist Förfrågningar: 0734-612003 Resultat: Betygsskala: Hjälpmedel: Anslås inom 3 veckor Godkänt 20 p, Väl godkänt 32 p,
Läs mer729G74 IT och programmering, grundkurs. Tema 2. Föreläsning 3 Jody Foo,
729G74 IT och programmering, grundkurs Tema 2. Föreläsning 3 Jody Foo, jody.foo@liu.se Föreläsningsöversikt Information i grafstrukturer Diskret matematik Relationer: kopplingar mellan mängder Funktioner
Läs merIntroduktion till frågespråket SQL (v0.91)
DD1370: Databaser och Informationssystem Hösten 2014 Petter Ögren Introduktion till frågespråket SQL (v0.91) 13:e November Disclaimer: Dessa anteckningar har producerats under viss tidspress, och kan därför
Läs merTentamen för DD1370 Databasteknik och informationssystem
Tentamen för DD1370 Databasteknik och informationssystem 16 Januari 2015 Hjälpmedel: Inga hjälpmedel utom papper och penna Tänk på: Skriv högst en uppgift på varje blad. Använd endast framsidan på varje
Läs merDatabaser och. SQL, utsökningar mot en tabell
Databaser och Informationssystem 5 hp IK008 Föreläsning 7 SQL, utsökningar mot en tabell Övningsuppgifter Övningstabell SQL> desc personal Name Null? Type ------------------------------------- --------
Läs mer13/11/14. Databasteknik och informationssystem DD1370 F3. Ett urval ur databasen bestäms av en SQL-fråga. Påminnelse: Vad är en Databas?
Påminnelse: Vad är en Databas? Databasteknik och informationssystem DD1370 F3 Petter Ögren Ett antal tabeller Referenser (pilar) mellan tabellerna Ex: register abc123 BMW 830101-0000 def100 Volvo 830101-0000
Läs merStarta MySQL Query Browser
Starta MySQL Query Browser 1. Starta MySQL Query Browser genom att antingen välja i Startmenyn: 2. eller leta upp ikonen på skrivbordet för start av MySQL Query Browser och dubbelklicka på den. 3. Du bör
Läs merFöreläsning 2. Variabler, tilldelning och kodblock{} if-satsen Logiska operatorer Andra operatorer Att programmera
Föreläsning 2 Variabler, tilldelning och kodblock if-satsen Logiska operatorer Andra operatorer Att programmera Variabler Det är i variabler som all data (information) lagras. Genom att ändra värde på
Läs merSQL del 2. Christer Stuxberg Institutionen för Informatik och Media
SQL del 2 Christer Stuxberg christer.stuxberg@im.uu.se Institutionen för Informatik och Media Översikt Repetition SELECT INSERT Mer SELECT Null sökning Gruppering (GROUP BY) Begränsad gruppering (HAVING)
Läs merEnvägs variansanalys (ANOVA) för test av olika väntevärde i flera grupper
Envägs variansanalys (ANOVA) för test av olika väntevärde i flera grupper Tobias Abenius February 21, 2012 Envägs variansanalys (ANOVA) I envägs variansanalys utnyttjas att
Läs merInformationssystem och databasteknik
Informationssystem och databasteknik Föreläsning 5 Analytisk databasdesign F5! Funktionellt beroende: Pnr Namn Funktion (i vanlig mat. betydelse): 610321 11111 22222 33333 Maria Eva Sture Olle För varje
Läs mer729G74 IT och programmering, grundkurs. Tema 3. Föreläsning 2 Jody Foo,
729G74 IT och programmering, grundkurs Tema 3. Föreläsning 2 Jody Foo, jody.foo@liu.se Föreläsningsöversikt Repetition: syntax-quiz Fler for-loopar (över listor och dictionaries) range() Nästlade strukturer
Läs merTDDC77 Objektorienterad Programmering
TDDC77 Objektorienterad Programmering Föreläsning 3 Sahand Sadjadee IDA, Linköpings Universitet Hösttermin 2018 Outline Operatorer Java Standard Library Inmatning Operatorer operatorer En operator är en
Läs merAlfabeten, strängar och språk. String
Alfabeten, strängar och språk Objektorienterad modellering och diskreta strukturer / design Språk och reguljära uttryck Ett alfabet är en ändlig icketom mängd vars element kallas symboler. Lennart Andersson
Läs merIT i organisationer och databasteknik
IT i organisationer och databasteknik Föreläsning 4 Relationsmodellen Från konceptuell modell till relationsdatabasschema Regler i ER-scheman eller UMLklass diagram? I Som klasser: RABATT KlassArabatt:
Läs merGränsvärdesberäkningar i praktiken
Gränsvärdesberäkningar i praktiken - ett komplement till kapitel i analsboken Jonas Månsson När man beräknar gränsvärden använder man sig av en rad olika strategier beroende på det givna problemet. Avsikten
Läs merAnvändarhandledning för SQL- och fönsterfilter
nvändarhandledning Modul: lla vser: SQL- & fönsterfilter 1[6] nvändarhandledning för SQL- och fönsterfilter Ett filter används för att begränsa de data som visas. I 3L finns SQL-filter och fönsterfilter.
Läs merOperatorer Tilldelning Kodblock { } if satsen Logiska uttryck Att programmera
Föreläsning 2 Operatorer Tilldelning Kodblock if satsen Logiska uttryck Att programmera En operator tar ett eller två data och producerar ett svar. Typexemplet är +. Den tar t.ex två heltal och producerar
Läs merUttryck och villkor. Föreläsning 2
Uttryck och villkor Föreläsning 2 Dagens kluring Finn fem fel! #include int main(void) printf("resistans hos R1 (ohm) : ") scanf("%d",r1); printf("resistans hos R2 (ohm) : "); scanf("%d",r2);
Läs merFortsättningskurs i programmering F 3. Algoritmer i programutveckling II Hugo Quisbert Flödesplaner med selektion
Fortsättningskurs i programmering F 3 Algoritmer i programutveckling II Hugo Quisbert 20130123 1 Flödesplaner med selektion 2 1 Exempel 1 selektion Om köpesumman är 1000 kr eller mer erhålles 10 % rabatt.
Läs merÖvningshäfte 1: Logik och matematikens språk
GÖTEBORGS UNIVERSITET MATEMATIK 1, MMG200, HT2014 INLEDANDE ALGEBRA Övningshäfte 1: Logik och matematikens språk Övning A Målet är att genom att lösa och diskutera några inledande uppgifter få erfarenheter
Läs merConcepts learned this far. ER till relationer. ER till relationer. ER till relationer. TDDD12 Database Technology
2008-04-07 TDDD12 Lecture 3: EER and mapping E 1 TDDD12 Database Technology Concepts learned this far Lecture 3: EER/ER and mapping to relations by Juha Takkinen 2008-04-07 1 2 2008-04-07 TDDD12 Lecture
Läs merDatabasutveckling Tabeller. tinyint 1 byte (0-255) Upp till 8 bytes
Databasutveckling Tabeller Copyright Mahmud Al Hakim mahmud@webacademy.se www.webacademy.se Datatyper Heltal bit 0, 1 eller NULL tinyint 1 byte (0-255) smallint int bigint 2 bytes 4 bytes 8 bytes Decimaltal
Läs merRelationsdatabasdesign
Vad är Relationsdatabasdesign? Relationsdatabasdesign nikosd@kth.se 08-7904460 rum 8522 Connolly/Begg (3rd edition) Kapitel 4., 4.2 och 5 (4th edition) Kapitel 5., 5.2 och 6 (5th edition) Kapitel 6., 6.2
Läs mer