Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -

Slides:



Advertisements
Verwante presentaties
SQL deel 2: datamodel ontwerp
Advertisements

Module 7 – Hoofdstuk 5 (1) SQL – een begin.
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -
PHP & MYSQL LES 03 PHP & DATABASES. PHP & MYSQL 01 PHP BASICS 02 PHP & FORMULIEREN 03 PHP & DATABASES 04 CMS: BEST PRACTICE.
Relationele databases en
Databases Informatica Ga verder met een muisklik. SQL FCO DBMS NE FA
Module 7 – Hoofdstuk 5 (4) SQL – voorwaarden aan groepen en meerdere tabellen.
Databank van een restaurant Download op Twee tabellen: Klanten: Alle klanten die minstens.
HALLO OPLETTEN : Waarom sql DOEN : Introductie opdracht
MySQL-acties Klassikaal: Wijnen.sql. 1.Toon alle wijnen die er zijn. Toon de naam, kleur en prijs. SELECT `naam`,`kleur`,`prijs` FROM `wijnen`
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -
Het selecteren van data uit meerdere gekoppelde tabellen
SQL Les 01 & 02. SELECT Weergeven van alle gegevens uit een tabel: SELECT * FROM tlbPersonen; Weergeven van alle personen die uit Aruba komen: SELECT.
Databases.
W ORD P RESS TECHNISCHE ACHTERGROND Kris Cardinaels 26 maart 2013.
LauwersCollege Buitenpost Informatica
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -
Computervaardigheden en Programmatie Universiteit AntwerpenDatabank - Basis 4.1 Computervaardigheden en Programmatie 1rste BAC Toegepaste Biologische Wetenschappen.
ontwerp een datamodel Criteria voor een goed model Ontwerppatronen
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -
Download en installeer de gereedschappen
Download en installeer de gereedschappen
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -
SQL & datamodelleren.
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -
ontwerp een datamodel Criteria voor een goed model Ontwerppatronen
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -
HALLO OPLETTEN : Waarom sql DOEN : Introductie opdracht
Vorige week: Referentiele integriteit
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -
SQL (structured Query Language) DDL (Data Definition Language) DML (Data Manipulation Language) Ontwerp databaseBevraag database.
Workshop PHP Een productencatalogus Met database.
Hoofdstuk 16 en 19 PHP en MYSQL
Databases.
Relationele Databases Hoofdstuk 10 Deel 2 Blz.: 90 t/m 95.
SQL ( SERVER ) Les #02: T-SQL. A GENDA Herhaling les 4 Views SELECT…INTO Beheren van tabellen: CREATE ALTER DROP Opdracht voor de volgende les.
Computervaardigheden Hoofdstuk 4 — Databank (Basis)
7 Databases. STRUCTURED QUERY LANGUAGE Bij het relationele model hoort een programmeertaal waarmee de database benaderd kan worden. In de praktijk wordt.
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -
24/04/2015IT-Assurance1 IT-Assurance deeltijd 4. Inleiding SQL Introductie in de basisfuncties Bijbehorend lesmateriaal: -AIV-boek van Derksen en Crins.
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -
Les 0 Structured Query Language SQL. Programma Les 0 – Introductieopdracht Les 1 Les 2 Les 3 Schriftelijke toets.
ANALYSE 3 INFANL01-3 WEEK CMI Informatica.
BIMAIV03 Les A1 BIMAIV03 Les A1 Databases. De gegevens in een database vormen de grondstof voor informatie De informatie wordt opgevraagd in de taal met.
ANALYSE 3 INFANL01-3 WEEK 8 CMI Informatica. ANALYSE 3- INFANL01-3 ▸ Vorige les ▸ Herhaling ▸ Normaliseerregels ▸ Omzetten ERD ▸ Group by en SET ▸ Proeftentamen.
Week 6 BIMAIV03 les B1. DML en DDL ata D anipulation M anguage L ata D efinition D anguage L.
Wat is SQL (1)? SQL (Structured Query Language):  is een zeer krachtige taal met een beperkt vocabulaire (aantal ‘woorden’)  is declaratief (‘WAT’ niet.
Databases.
SQL Cursus deel
Databases.
SQL Les 3 17 February 2019.
SQL Les 3 23 February 2019.
SQL Les 1 5 April 2019.
SQL Les 6 14 April 2019.
SQL Les 4 12 May 2019.
Transcript van de presentatie:

Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese SQL deel 1: SQL queries

Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese Database Architectuur  Een datamodel is het fundament van je toepassing:

Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese Sql, php, html enzo DataBase ( gegevens ) : mySQL| Oracle | MSSQL WebServer ( + scripting) : PHP | ASP | JSP SQL querieDatatabel (recordset ) Front-End Client : Browser | Flash | Feedreader | … URLHTML + CSS (+ JavaScript ) | XML

Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese Wat is een database  DB: Database  Een verzameling tabellen gevuld met data  DBMS: Database management systeem  Software om een database te creëren en te manipuleren  Oracle  mySQL  SQL-server  MS ACCESS  SQL: Structured Query Language  Taal om met een database te praten  Informatie selecteren  Informatie toevoegen, veranderen, wijzigen  Tabellen definiëren  Relaties tussen tabellen definiëren

Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese Client-Server architectuur  Onderscheid  Database-server ( SQL-server, Oracle )  Database-cliënt ( MS ACCESS, web-server )  NB: MS ACCESS kan ook zonder server direct met een database werken

Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese SQL en database ontwerp  Deel 1 ( week 2 – 5 )  SQL queries  Deel 2 ( week 6 – 9 )  datamodelleren

Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese Lesopzet deel 1 SQL queries 1.Uitleg 2.Oefenen 3.Uitleg 4.Oefenen 5.Uitleg 6.Oefenen 7.Etc….

Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese SQL 1 : SELECT Het selecteren van data uit een enkelvoudige tabel

Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese Vandaag  Tabel:  rijen en kolommen  Datatype:  tekst, getal, datum, etc…  Selecties uit één tabel: SELECT query  Selectie criteria  Berekeningen  Statistieken  Groeperen

Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese Download en installeer de gereedschappen  XAMP  Apache server ( http )  mySql server  DBDesigner  IAM SQL oefeningen Database  phpmyAdmin Import : sql_products.sql, sql_winkel.sql  DBDesigner open : productsERD.xml, winkelERD.xml

Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese tabellen  Een database bestaat uit een verzameling tabellen

Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese Hoe zit data in een database?  Tabellen, bijvoorbeeld : telefoonnummers

Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese tabel

Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese rij

Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese kolom

Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese veld

Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese ‘Datatype’  De informatie in de cellen van een kolom zijn allemaal van hetzelfde ‘type’

Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese datatype  Type informatie in een veld  Bepaalt het soort operaties dat je er op kan uitvoeren.  basis datatypen  Numeriek optellen, aftrekken, gemiddelde  Tekst aan_elkaar_plakken, substring, teveel_spaties_verwijderen, zoek_en_vervang  Boolean and, or, xor, not  Binair/BLOBgeen operaties  *Datum/tijd*  *Lange tekst*

Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese Speciale datatype: datum/tijd  Datum/tijd  Eigenlijk ‘numeriek’:  aantal milliseconden sinds het jaar nul ( of sinds 1900 )  Echter :  Speciale onregelmatige rekeneenheden ( maanden, schrikkeljaar, etc )  Speciale manier van weergeven ‘ ’ of ‘ ’ of ‘1 jan 2004’

Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese Speciaal datatype: lange tekst  Tekst kan worden onderverdeeld in  Korte tekst ( <255 karakters )  Lange tekst ( >255 karakter )  Slecht een puur technische onderscheid Heeft te maken met  Efficiënt gebruik van geheugenruimte.  Andere manier van zoeken

Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese Onzinnige datatypen in ACCESS  Valuta  Hyperlink

Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese Basis datatype  Type informatie in een veld  Bepaald het soort operaties dat je er op kan uitvoeren.  basis datatypen die in iedere database of programmeertaal op één of andere manier worden ondersteund:  Numeriek  Tekst  Boolean  Binair  Datum/tijd  Lange tekst

Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese Vraag? Welke data type is  Telefoonnummer?  Huisnummer?  Leeftijd?

Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese En dan nu... SQL Structured Query Language  Een taal om database te bevragen en te manipuleren.  Als sinds begin 70 relatief stabiel  Ondersteund door ieder DBMS

Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese ‘SELECT’ query  Het selecteren van informatie uit een tabel bijvoorbeeld ‘product’ -tabel  selecteer productnamen en productprijzen uit de tabel ‘product’  selecteer namen van producten uit de categorie 'boeken'  Selecteer alle producten die duurder zijn dan 5 euro  Selecteer een lijst met alle categorie-namen  Selecteer de gemiddelde prijs van de producten per categorie

Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese Verschillende soorten selecties  Rijen  Selecteren van kolommen (hst 2)  Sorteren (hst 3)  Filteren van rijen (hst 4,5,6)  Het berekenen van kolommen (hst 7,8)  Aggregaties  Lijst van voorkomende waarden ( ? )  Statistieken ( hst 9 )  Groeperen ( hst 10 )

Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese Syntax van een eenvoudige SELECT  SELECT ID, naam, prijs FROM product WHERE categorie = ‘boek’ ORDER BY prijs  SELECT {kolomnamen} FROM {tabelnaam} WHERE {criteria} ORDER BY {kolomnaam}

Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese SELECT resultaat  Het resultaat van een SQL query is altijd een tabel.  IDnaamprijs 8groentensoep2,15 7appelsap2,95 9blik tonijn3,15

Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese Syntax van een eenvoudige SELECT variaties  SELECT naam, prijs FROM product WHERE categorie = ‘boek’ ORDER BY prijs  SELECT product.naam, product.prijs FROM product WHERE product.categorie = ‘boek’ ORDER BY product.prijs  SELECT [product.naam], [product.prijs] FROM product WHERE [product.categorie] = ‘boek’ ORDER BY [product.prijs]

Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese SELECT WHERE  SELECT naam, prijs FROM product WHERE categorie = ‘eten’ AND prijs < 5 ORDER BY producent, prijs  Logische operaties: AND, OR, NOT  Vergelijkingen: =, >,, <=, <=, LIKE

Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese Berekeningen in SELECT (numeriek)  Selecteer de naam, prijs en prijs_plus_btw  SELECT naam, prijs, prijs + prijs* btw_tarief/100 AS prijs_met_btw FROM product  Naamprijsprijs_met_btw fiets brood11,05 boek3036

Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese Berekeningen in SELECT (datum)  Selecteer de naam en de ‘leeftijd’ van een product  SELECT naam, beschikbaar_vanaf, DATEDIFF('yyyy', beschikbaar_vanaf, DATE() ) AS leeftijd FROM product; WHERE beschikbaar_vanaf <= DATE()  Naambeschikbaar_vanafleeftijd fiets brood boek

Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese SELECT  Tot nu toe:  Selecteren van rijen uit een tabel  Kolommen  Rijen filteren  Berekende kolommen  Ook mogelijk:  Aggregatie functies  Gemiddelde prijs van de producten  Gemiddelde prijs per categorie  Lijst van alle categorieën  Lijst van producenten met meer dan één product

Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese SELECT DISTINCT  SELECT DISTINCT categorie, producent FROM product  categorie vervoer voedsel boek

Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese statistieken  SELECT COUNT(*) AS aantal, AVG(prijs) AS midPrijs, MAX(prijs) AS maxPrijs, MIN(prijs) AS minPrijs FROM product  AantalmidPrijsmaxPrijsminPrijs

Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese Statistieken per groep  SELECT categorie, COUNT(*) AS aantal, AVG(prijs) AS midPrijs, MAX(prijs) AS maxPrijs, MIN(prijs) AS minPrijs FROM product GROUP BY categorie  CategorieaantalgemPrijsmaxPrijsminPrijs boek530, voedsel vervoer32,753,152.05

Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese Herhaal: Verschillende soorten selecties  Rijen  Selecteren van kolommen (hst 2)  Sorteren (hst 3)  Filteren van rijen (hst 4,5,6)  Het berekenen van kolommen (hst 7,8)  Aggregaties  Lijst van voorkomende waarden ( ? )  Statistieken ( hst 9 )  Groeperen ( hst 10 )

Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese oefenen  Doe de oefeningen uit de reader !

Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese Volgende week  Meerdere tabellen in de database