Præsentation er lastning. Vent venligst

Præsentation er lastning. Vent venligst

SQL Jesper Tørresø DAB1 E09 17. September 2009. Punkter for i dag. SQL baggrund. Relationel algebra. SQL koncept –Vises ved brug af VS2008.

Lignende præsentationer


Præsentationer af emnet: "SQL Jesper Tørresø DAB1 E09 17. September 2009. Punkter for i dag. SQL baggrund. Relationel algebra. SQL koncept –Vises ved brug af VS2008."— Præsentationens transcript:

1 SQL Jesper Tørresø DAB1 E09 17. September 2009

2 Punkter for i dag. SQL baggrund. Relationel algebra. SQL koncept –Vises ved brug af VS2008.

3 Relationel algebra Brug af operatorer på mængder/relationer Et dagligdags område hvor vi også bruger operatorer er? Aritmetik Hvor +, -, *, / og = benyttes på tal. 4 + 3 = 7 4 * 7 = 28

4 Relationel algebra Select statement in SQL combines many relational operations –select from where select clause –specifies the attributes that go in the results table. from clause –specifies the source tables that the database will access in order to execute the query. where clause –specifies the selection conditions, including the join condition and other functions like ordering grouping etc.

5 Relationel algebra Har seks basis (primitive) operatorer 1.SELECT –Udvælgelse med logiske operatorer (and, or, equals..) 2.PROJECTION (Unary, kun et attribut sæt ) –”Udvælgelse” af attributter fra en mængde 3.CARTESISK PRODUKT (Cross Join X) –N lang tupler X M lang tupler bliver N+M lang tuple og –A tupler i tabel 1 X B tupler i tabel 2 giver A*B tupler 4.SET UNION (Fælles mængde) 5.SET DIFFERENCE (Differens mængde) 6.RENAME (unary kun et felt i en tuple)

6 SELECT og PROJECTION Projection

7 Relationel algebra Hertil kommer JOINS og JOINS lignende operatorer. Eksempel Natural Join Giver ”straks” associationer til ? Relationsship ved FK og PK

8 Relationel algebra Bowtie symbolet ⋈ er udtrykket for JOIN (Forene). Hjælper os rigtigt godt efter alle ”Normaliserings tiltagene” Forener de adskilte data. Flere slags JOIN: EQUIJOIN, SEMIJOIN ANTIJOIN og DIVSION men der er CROSS JOIN, INNER JOIN og OUTER JOIN der interessante her

9 Relationel algebra og SQL Det fleste JOINs kræver ”union compatible attributes” Exemple join operation (Natural join) –join Employee and TimeCard where Employee.ssn = TimeCard.ssn To formelle JOIN udtryk –select * from Employee, TimeCard where Employee.ssn = TimeCard.ssn (Implicit) –select * from Employee join TimeCard on Employee.ssn = TimeCard.ssn (Eksplicit !!!) – ”JOIN” og ”INNER JOIN”

10 SQL DML DDL Skabe at datagrundlag –Tabeller fra opgave 0 (DDL CREATE/DROP..) –INSERT (Nøgler ”driller” Constraints + Integrety ) –UPDATE (Nøgler ”driller”) –DELETE (Nøgler ”driller”) Søge i data vha. SQL –Enkelt tabel –Mange tabeller –Filter etc.

11 Generelt om DML ”SELECT” Logiske operatorer for udvælgelse (WHERE) Trin 1 Sortering og sætte i rækkefølge af fundne data –DISTINCT og ORDER BY (stigende, aftagende eller tilfældig) Søgning i fundne data eller sæt/mængde –IN Sammensætning af attributter eller rækker i fundne data –Attribut/Kolonne funktion count(), sum(), min(), max() etc. Samler rækker til en række. –GROUP BY samler rækker i en gruppe af rækker Tælle i Trin 1 (SQL overdrevet) –SELECT owner from car where count(owner) > 1; (Dur ikke) –SELECT owner,count(regno) FROM car GROUP BY owner HAVING count(regno)>1;

12 Rækkefølge.. Order of Evaluation : SELECT [distinct] column_names7,6 eliminate unwanted data FROM table_list1 Cartesian Product [WHERE conditions ]2 Filter rows [GROUP BY colum_list3 Group Rows [HAVING conditions ]] 4 eliminate unwanted groups [ORDER BY column_list [DESC]]5 Sort rows


Download ppt "SQL Jesper Tørresø DAB1 E09 17. September 2009. Punkter for i dag. SQL baggrund. Relationel algebra. SQL koncept –Vises ved brug af VS2008."

Lignende præsentationer


Annoncer fra Google