1. Geef code en omschrijving van alle cursussen die precies vier dagen duren.

Maat: px
Weergave met pagina beginnen:

Download "1. Geef code en omschrijving van alle cursussen die precies vier dagen duren."

Transcriptie

1 Antwoorden Deze bijlage geeft de antwoorden van de opgaven waarmee de hoofdstukken 4, 5, 7, 8, 9, en 10 zijn afgesloten. Waar dat van toepassing is geven we alternatieve oplossingen aan, evenals waarschuwingen voor mogelijke fouten. Het is ondoenlijk om per opgave alle goede oplossingen op te nemen; de mogelijkheden van de taal SQL zijn daartoe te uitgebreid. Dit betekent dat het heel goed mogelijk is dat bepaalde opgaven op een volstrekt andere manier worden aangepakt en opgelost. Vergelijking van de resultaattabellen is dan een mogelijkheid om de correctheid te controleren. Pas echter op: als een query het goede resultaat geeft, wil dat nog niet zeggen dat de query correct geformuleerd is: foute oplossingen kunnen - per ongeluk - de juiste rijen opleveren. Dit zijn de meest verraderlijke queries, omdat ze op een onverwacht moment verkeerde oplossingen kunnen produceren. De opgaven zijn hier en daar beslist moeilijk. We gebruiken als het motto dat u zelf voldoende eenvoudige opdrachten kunt verzinnen om uw kennis te testen. Van een paar opgaven is het begrijpen van de gegeven oplossing al een hele prestatie. Antwoorden opgaven paragraaf Geef code en omschrijving van alle cursussen die precies vier dagen duren. select code, omschrijving 2 from cursussen 3 where lengte = 4; CODE OMSCHRIJVING S02 Introductiecursus SQL JAV Java voor Oracle ontwikkelaars GEN Systeemgeneratie 2. Geef alle medewerkers, alfabetisch gesorteerd op functie, en per functie op leeftijd (van jong naar oud). select * 2 from medewerkers 3 order by functie, gbdatum desc; MNR NAAM VOORL FUNCTIE CHEF GBDATUM MAANDSAL COMM AFD JANSEN R BOEKHOUDER DEC MOLENAAR TJA BOEKHOUDER JAN DE KONING CC DIRECTEUR 17-NOV JANSEN JM MANAGER APR CLERCKX AB MANAGER JUN BLAAK R MANAGER NOV ADAMS AA TRAINER DEC SMIT N TRAINER DEC SCHOTTEN SCJ TRAINER NOV SPIJKER MG TRAINER FEB DEN DRAAIER JJ VERKOPER SEP DE WAARD TF VERKOPER FEB ALDERS JAM VERKOPER FEB Academic Service, Den Haag 1

2 7654 MARTENS P VERKOPER SEP Welke cursussen zijn in Utrecht en/of in Maastricht uitgevoerd? select cursus 2 from uitvoeringen 3 where locatie in ('UTRECHT','MAASTRICHT'); CURSUS OAG S02 JAV XML RSO 4. Welke medewerkers hebben zowel de Java als de XML cursus gevolgd? Geef hun nummers. select cursist 2 from inschrijvingen 3 where cursus = 'JAV' 4 and cursist in (select cursist 5 from inschrijvingen 6 where cursus = 'XML'); CURSIST NB: Er zijn diverse oplossingen mogelijk, bijvoorbeeld met twee subqueries. Duidelijk moge zijn dat een oplossing met AND of OR op rijniveau fout is! 5. Geef de naam en voorletters van alle medewerkers, behalve van R. Jansen. select naam, voorl 2 from medewerkers 3 where not (naam = 'JANSEN' and voorl = 'R'); NAAM VOORL SMIT N ALDERS JAM DE WAARD TF JANSEN JM MARTENS P BLAAK R CLERCKX AB SCHOTTEN SCJ DE KONING CC DEN DRAAIER JJ ADAMS AA SPIJKER MG MOLENAAR TJA Academic Service, Den Haag 2

3 Alternatief zonder haakjes (let op: met OR): select naam, voorl 2 from medewerkers 3 where naam <> 'JANSEN' or voorl <> 'R'; 6. Geef nummer, functie, en geboortedatum van alle medewerkers die vóór 1960 geboren zijn, en trainer of verkoper zijn. select mnr, functie, gbdatum 2 from medewerkers 3 where gbdatum < to_date('01-jan-1960','dd-mon-yyyy') 4 and functie in ('TRAINER','VERKOPER'); MNR FUNCTIE GBDATUM VERKOPER 28-SEP TRAINER 26-NOV TRAINER 13-FEB-1959 Alternatief (let op de haakjes voor de precedentie): select mnr, functie, gbdatum 2 from medewerkers 3 where gbdatum < to_date('01-jan-1960','dd-mon-yyyy') 4 and (functie = 'TRAINER' or functie = 'VERKOPER'); 7. Geef de nummers van alle medewerkers die niet aan de afdeling opleidingen zijn verbonden. select mnr 2 from medewerkers 3 where afd <> (select anr 4 from afdelingen 5 where naam = 'OPLEIDINGEN'); MNR Geef de nummers van alle medewerkers die de Java cursus niet hebben gevolgd. select mnr 2 from medewerkers 3 where mnr not in (select cursist 4 from inschrijvingen 5 where cursus = 'JAV'); Academic Service, Den Haag 3

4 MNR Let op: De volgende twee oplossingen zijn FOUT: select distinct cursist 2 from inschrijvingen 3 where cursist not in (select cursist 4 from inschrijvingen 5 where cursus = 'JAV'); CURSIST select distinct cursist 2 from inschrijvingen 3 where cursus <> 'JAV'; CURSIST Welke medewerkers hebben voorvoegsels in hun naam? select mnr, naam, voorl 2 from medewerkers 3 where naam like '% %'; MNR NAAM VOORL DE WAARD TF 7839 DE KONING CC 7844 DEN DRAAIER JJ Academic Service, Den Haag 4

5 10a. Welke medewerkers hebben ondergeschikten? select mnr, naam, voorl 2 from medewerkers 3 where mnr in (select chef 4 from medewerkers); MNR NAAM VOORL JANSEN JM 7698 BLAAK R 7782 CLERCKX AB 7788 SCHOTTEN SCJ 7839 DE KONING CC 7902 SPIJKER MG 10b. En welke niet? select mnr, naam, voorl 2 from medewerkers 3 where mnr not in (select chef 4 from medewerkers 5 where chef is not null); MNR NAAM VOORL SMIT N 7499 ALDERS JAM 7521 DE WAARD TF 7654 MARTENS P 7844 DEN DRAAIER JJ 7876 ADAMS AA 7900 JANSEN R 7934 MOLENAAR TJA 8 rows selected. NB: Let op de laatste WHERE-component; die is beslist nodig! 11. Geef een overzicht van alle uitvoeringen van algemene cursussen (type ALG) in select * 2 from uitvoeringen 3 where begindatum between date ' ' 4 and date ' ' 5 and cursus in (select code 6 from cursussen 7 where type = 'ALG'); CURSUS BEGINDATUM DOCENT LOCATIE OAG 10-AUG UTRECHT S02 12-APR DE MEERN S02 04-OCT MAASTRICHT S02 13-DEC DE MEERN Academic Service, Den Haag 5

6 Het jaar 1999 kan ook op een aantal andere manieren worden opgelost door gebruik te maken van functies, die in hoofdstuk 5 aan de orde komen. where to_char(begindatum,'yyyy') = '1999' where extract(year from begindatum) = 1999 where begindatum between to_date('01-jan-1999','dd-mon-yyyy') and to_date('31-dec-1999','dd-mon-yyyy') 12. Geef naam en voorletters van iedereen die ooit bij N. Smit een cursus heeft gevolgd. Aanwijzing: gebruik sub-queries, en werk vervolgens van binnen naar buiten. Dus: bepaal het nummer van N. Smit, zoek dan naar de cursussen die hij heeft gegeven, enzovoorts. select naam, voorl 2 from medewerkers 3 where mnr in 4 (select cursist 5 from inschrijvingen 6 where (cursus,begindatum) in 7 (select cursus,begindatum 8 from uitvoeringen 9 where docent = 10 (select mnr 11 from medewerkers 12 where naam = 'SMIT' 13 and voorl = 'N' 14 ) 15 ) 16 ); NAAM VOORL ALDERS JAM BLAAK R SCHOTTEN SCJ DE KONING CC JANSEN R SPIJKER MG 13. Wat is de verklaring van het resultaat 'no rows selected' in figuur 4.41? De WHERE-component: 2 where evaluatie not in (1,2,3,NULL) is equivalent met: 2 where evaluatie <> 1 3 AND evaluatie <> 2 4 AND evaluatie <> 3 5 AND evaluatie <> NULL Als we nu een rij hebben met een evaluatie-waarde van 1, 2, of 3 dat is het vrij duidelijk dat één van de eerste drie condities 'onwaar' oplevert, en daarmee levert de WHERE-component als geheel 'onwaar' op. Als de evaluatie-waarde een null-waarde bevat, dan resulteren alle vier de voorwaarden in 'onbekend' en daarmee wordt het eindresultaat ook 'onbekend'. Tot zover geen verrassingen. Academic Service, Den Haag 6

7 Als de evaluatie-waarde 4 of 5 is (de andere twee toegestane waarden) dan zijn de eerste drie condities alledrie waar, maar levert de laatste conditie 'onbekend' op. De laatste conditie is dus de spelbreker, waardoor het eindresultaat 'onbekend' wordt. waar AND waar AND waar AND onbekend <=> onbekend Antwoorden opgaven paragraaf Geef van alle medewerkers eerst de achternaam, dan een komma, gevolgd door de voorletter(s) en voorvoegsels. select substr(naam,instr(naam,' ')+1) 2 ', ' voorl ' ' 3 substr(naam,1,instr(naam,' ')-1) 4 as naam 5 from medewerkers; NAAM SMIT, N ALDERS, JAM WAARD, TF DE JANSEN, JM MARTENS, P BLAAK, R CLERCKX, AB SCHOTTEN, SCJ KONING, CC DE DRAAIER, JJ DEN ADAMS, AA JANSEN, R SPIJKER, MG MOLENAAR, TJA 2. Geef van alle medewerkers hun naam en de geboortedatum, in het formaat zoals bijvoorbeeld 11 April select naam 2, to_char(gbdatum,'dd Month yyyy') 3 from medewerkers; NAAM TO_CHAR(GBDATUM,'DDMONTHYYYY') SMIT 17 December 1965 ALDERS 20 Februari 1961 DE WAARD 22 Februari 1962 JANSEN 02 April 1967 MARTENS 28 September 1956 BLAAK 01 November 1963 CLERCKX 09 Juni 1965 SCHOTTEN 26 November 1959 DE KONING 17 November 1952 DEN DRAAIER 28 September 1968 ADAMS 30 December 1966 JANSEN 03 December 1969 SPIJKER 13 Februari 1959 MOLENAAR 23 Januari 1962 Academic Service, Den Haag 7

8 NB: We kunnen de taal waarin de maandnamen in het resultaat worden weergegeven als volgt veranderen in het Nederlands: alter session set nls_language=dutch; Session altered. 3a. Op welke dag ben (of was!) je precies dagen oud? select to_date('11-aug-1954','dd-mon-yyyy') as "10000 dagen" 3 from dual; dagen DEC-1981 We kunnen in plaats van de TO_DATE-functie ook gebruik maken van een DATE-constante: select date ' ' as "10000 dagen" 3 from dual; dagen DEC b. Op welke dag van de week valt/viel dat? select to_char(to_date('11-aug-1954','dd-mon-yyyy')+10000,'day') 2 as "op een:" 3 from dual; op een: zondag Ook hier zouden we op dezelfde wijze gebruik kunnen maken van een DATE-constante. 4. Herschrijf het voorbeeld in figuur 5.24 met gebruikmaking van de NVL2-functie. select naam, maandsal, comm 2, nvl2(comm,12*maandsal+comm,12*maandsal) as jaarsal 3 from medewerkers 4 where naam like '%T%'; NAAM MAANDSAL COMM JAARSAL SMIT MARTENS Academic Service, Den Haag 8

9 SCHOTTEN Herschrijf het voorbeeld in figuur 5.25 met gebruikmaking van CASE-expressies, zowel in de SELECT-component als in de ORDER BY-component. select functie, naam 2, case 3 when maandsal <= then 'goedkoop' 5 else 'duur' 6 end as klasse 7 from medewerkers 8 where gbdatum < date ' ' 9 order by case functie 10 when 'DIRECTEUR' then 1 11 when 'MANAGER' then 2 12 else 3 13 end; FUNCTIE NAAM KLASSE DIRECTEUR DE KONING duur MANAGER BLAAK duur VERKOPER ALDERS goedkoop VERKOPER DE WAARD goedkoop BOEKHOUDER MOLENAAR goedkoop TRAINER SPIJKER duur TRAINER SCHOTTEN duur VERKOPER MARTENS goedkoop Merk op dat we (ongevraagd) ook de TO_DATE-functie hebben vervangen door een DATE-constante. 6. Herschrijf het voorbeeld in figuur 5.21 met gebruikmaking van DATE en INTERVAL constantes, zodat ze onafhankelijk worden van de NLS_DATE_FORMAT instelling. select date ' ' + interval '1' month as kolom1 2, date ' ' + interval '1' month as kolom2 3, date ' ' - interval '3' month as kolom3 4 from dual;, date ' ' + interval '1' month as kolom2 * ERROR at line 2: ORA-01839: date not valid for month specified c/29/28 2*, date ' ' + interval '1' month as kolom2 / KOLOM1 KOLOM2 KOLOM FEB FEB MAY-1997 Hieruit blijkt dat 29 januari tijdens een niet-schrikkeljaar problemen oplevert; als we 29 in 28 veranderen gaat het goed. Academic Service, Den Haag 9

10 7. Onderzoek het verschil tussen de datum-formaten WW en IW (weeknummer en ISO weeknummer) aan de hand van een willekeurige datum, en verklaar het eventuele verschil. select sysdate 2, to_char(sysdate, 'ww') as ww 3, to_char(sysdate, 'iw') as iw 4 from dual; SYSDATE WW IW FEB Het verschil heeft te maken met de manier waarop het weeknummer is gedefinieerd. Het formaat WW laat de eerste week van het jaar altijd op 1 januari beginnen, ongeacht op welke dag van de week dat valt. De ISO standaard hanteert andere regels. Een ISO week begint altijd op een maandag, en rond de jaarwisseling zijn de regels als volgt: Als 1 januari op een vrijdag, zaterdag, of zondag valt dan behoort de week nog tot het vorige jaar, en anders tot het nieuwe jaar. Antwoorden opgaven paragraaf In figuur 7.10 wordt de constraint M_VERK_CHK op een nogal cryptische manier gedefinieerd. Formuleer dezelfde constraint zonder DECODE en NVL2 te gebruiken. Hier volgen twee mogelijkheden: check ((functie = 'VERKOPER' and comm is not null) or (functie <>'VERKOPER' and comm is null) ) check ((functie = 'VERKOPER' or comm is null) and not (functie = 'VERKOPER' and comm is null) ) 2 Waarom zou de constraint in figuur 7.12 met een apart ALTER TABLE commando moeten worden gedefinieerd? De constraint moet met ALTER TABLE worden gedefinieerd vanwege een kip-ei probleem: een refererende sleutel moet altijd naar een bestaande tabel verwijzen, en er is hier sprake van twee tabellen (MEDEWERKERS en AFDELINGEN) die naar elkaar verwijzen. 3 Het is weliswaar niet behandeld, maar beredeneer waarom bij het gebruik van sequences de pseudo-kolom CURRVAL in een transactie niet kan worden gebruikt zonder eerst een beroep te doen op NEXTVAL. In een multi-user omgeving kunnen diverse database-gebruikers tegelijkertijd gebruik maken van sequences, dus tegelijkertijd met verschillende waarden voor CURRVAL aan het werk zijn; er is dus geen eenduidige globale waarde voor CURRVAL. NEXTVAL is daarentegen op ieder moment gedefinieerd als de volgende sequence-waarde om uit te delen. 4 Hoe komt het dat de kolom evaluatie van de tabel inschrijvingen null-waarden accepteert, ondanks de constraint I_EVAL_CHK (zie figuur 7.16)? Dat komt door de driewaardige logica; een CHECK-conditie kan als resultaat waar, onwaar of onbekend opleveren. Een constraint wordt pas geschonden als de conditie onwaar oplevert. Dit betekent dat voor een verplichte kolom altijd expliciet een NOT NULL-constraint moet worden toegevoegd. Academic Service, Den Haag 10

11 5 Als een PRIMARY KEY of UNIQUE constraint wordt gedefinieerd, creëert Oracle normaal gesproken impliciet een unieke index om de constraint te kunnen bewaken. Onderzoek wat er gebeurt als een dergelijke constraint DEFERRABLE wordt gedefinieerd. Als PRIMARY KEY of UNIQUE constraints DEFERRABLE worden gedefinieerd, creëert Oracle nietunieke indexen. Indexen moeten namelijk onmiddellijk worden bijgewerkt, zodat tijdens een transactie tijdelijk dubbele waarden in de index moeten kunnen optreden. 6 Met behulp van functie-gebaseerde indexen kunnen we "conditionele uniciteit" implementeren. Maak een unieke index op de INSCHRIJVINGEN-tabel die er voor zorgt dat de OAG-cursus maar één keer mag worden gevolgd. create unique index oag_inschr on inschrijvingen 2 ( case cursus when 'OAG' then cursist else null end 3, case cursus when 'OAG' then cursus else null end ); Index created. De truc is om een index te bouwen op combinaties (cursist, cursus) waarbij we alle niet-oag inschrijvingen negeren. Test de oplossing met het volgende commando (dat zou moeten falen): insert into inschrijvingen values (7900,'OAG',sysdate,null); insert into inschrijvingen values (7900,'OAG',sysdate,null) * ERROR at line 1: ORA-00001: unique constraint (BOEK.OAG_INSCHR) violated Antwoorden opgaven paragraaf Produceer een overzicht van alle cursusuitvoeringen; geef de cursuscode, de begindatum, de cursuslengte, en de naam van de docent. select c.code 2, u.begindatum 3, c.lengte 4, m.naam as docent 5 from medewerkers m 6, cursussen c 7, uitvoeringen u 8 where u.docent = m.mnr 9 and u.cursus = c.code; CODE BEGINDATUM LENGTE DOCENT XML 03-FEB SMIT S02 13-DEC SMIT S02 04-OKT SMIT OAG 10-AUG JANSEN JAV 13-DEC JANSEN RSO 24-FEB SCHOTTEN PLS 11-SEP SCHOTTEN JAV 01-FEB ADAMS S02 12-APR SPIJKER OAG 27-SEP SPIJKER Academic Service, Den Haag 11

12 NB: Als we ook de cursusuitvoeringen willen zien met onbekende docent, kunnen we deze oplossing als volgt aanpassen: select DISTINCT c.code 2, u.begindatum 3, c.lengte 4, case when u.docent is not null 5 then m.naam 6 else null 7 end as docent 8 from medewerkers m 9, cursussen c 10, uitvoeringen u 11 where coalesce(u.docent,-1) in (m.mnr,-1) 12 and u.cursus = c.code; CODE BEGINDATUM LENGTE DOCENT ERM 15-JAN JAV 13-DEC JANSEN JAV 01-FEB ADAMS OAG 10-AUG JANSEN OAG 27-SEP SPIJKER PLS 11-SEP SCHOTTEN PRO 19-FEB RSO 24-FEB SCHOTTEN S02 12-APR SPIJKER S02 04-OKT SMIT S02 13-DEC SMIT XML 03-FEB SMIT XML 18-SEP Regel 11 is misschien op het eerste oog niet zo duidelijk; het maakt de join tussen UITVOERINGEN en MEDEWERKERS iets soepeler. We kunnen in plaats van 1 ook een willekeurig ander getal gebruiken, mits het geen bestaand medewerkernummer kan zijn. Merk ook op dat dit de toevoeging van DISTINCT noodzakelijk maakt. 2 Geef in twee kolommen naast elkaar de naam van elke cursist die een S02 cursus heeft gevolgd, met de naam van de docent. De onderstaande oplossing gebruikt de ANSI/ISO join syntax, voor de variatie: select m.naam as deelnemer 2, d.naam as docent 3 from medewerkers d 4 join 5 uitvoeringen u on (u.docent = d.mnr) 6 join 7 inschrijvingen i using (cursus, begindatum) 8 join 9 medewerkers m on (i.cursist = m.mnr) 10 where cursus = 'S02'; DEELNEMER DOCENT ALDERS SPIJKER BLAAK SPIJKER Academic Service, Den Haag 12

13 ADAMS MOLENAAR SCHOTTEN DE KONING SPIJKER BLAAK SPIJKER SPIJKER SPIJKER SMIT SMIT SMIT SMIT SMIT 3 Geef van iedere medewerker: naam, voorletters, en het jaarsalaris (inclusief toelage en commissie). select m.naam, m.voorl 2, 12 * (m.maandsal + s.toelage) 3 + nvl(m.comm,0) as jaarsalaris 4 from medewerkers m 5 join 6 schalen s 7 on (m.maandsal 8 between s.ondergrens 9 and s.bovengrens); NAAM VOORL JAARSALARIS SMIT N 9600 JANSEN R 9600 ADAMS AA DE WAARD TF MARTENS P MOLENAAR TJA DEN DRAAIER JJ ALDERS JAM CLERCKX AB BLAAK R JANSEN JM SCHOTTEN SCJ SPIJKER MG DE KONING CC Geef van alle cursusuitvoeringen: de cursuscode, de begindatum, en het aantal inschrijvingen. Sorteer op begindatum. select cursus 2, begindatum 3, count(i.cursist) as inschrijvingen 4 from uitvoeringen u 5 left outer join 6 inschrijvingen i 7 using(cursus, begindatum) 8 group by cursus 9, begindatum 10 order by begindatum; CURS BEGINDATUM INSCHRIJVINGEN S02 12-APR OAG 10-AUG Academic Service, Den Haag 13

14 S02 04-OCT JAV 13-DEC S02 13-DEC JAV 01-FEB XML 03-FEB PLS 11-SEP XML 18-SEP OAG 27-SEP ERM 15-JAN PRO 19-FEB RSO 24-FEB rows selected. NB: We hebben hier de outerjoin nodig om ook cursussen zonder inschrijvingen in het resultaat te krijgen. Denk er ook aan dat COUNT(*) op de derde regel het verkeerde resultaat zou opleveren! 5 Geef nu code, begindatum, en aantal inschrijvingen van alle cursusuitvoeringen in 1999 met minstens drie inschrijvingen. select cursus 2, begindatum 3, count(*) 4 from inschrijvingen 5 where extract(year from begindatum) = group by cursus 7, begindatum 8 having count(*) >= 3; CURSUS BEGINDATUM COUNT(*) JAV 13-DEC OAG 10-AUG S02 12-APR S02 04-OKT Omdat we toch niet geïnteresseerd zijn in uitvoeringen zonder deelnemers, kunnen we volstaan met de inschrijvingentabel. Dat zou anders zijn geweest als de vraag was geweest... met minder dan drie inschrijvingen ; nul is immers ook minder dan drie. 6 Geef de nummers van alle medewerkers die wèl ooit een cursus als docent hebben gegeven, maar nog nooit een cursus hebben gevolgd. select docent from uitvoeringen 2 minus 3 select cursist from inschrijvingen; DOCENT Deze oplossing lijkt goed te zijn, maar ziet er voor een geoefend oog verdacht uit. Het resultaat bestaat namelijk niet uit een, maar uit twee rijen: set feedback 1 Academic Service, Den Haag 14

15 / DOCENT rows selected. We zouden dus expliciet null-waarden in de DOCENT-kolom ook nog moeten uitsluiten: select docent from uitvoeringen 2 where docent is not null 3 minus 4 select cursist from inschrijvingen; DOCENT Welke medewerkers hebben een bepaalde cursus meer dan één keer gevolgd? select cursist,cursus 2 from inschrijvingen 3 group by cursist,cursus 4 having count(*) > 1 ; CURSIST CURSUS S JAV 7902 S02 8 Geef van alle docenten: naam en voorletters, het aantal cursussen dat ze hebben gegeven, het totale aantal cursisten dat ze hebben opgeleid, en het gemiddelde evaluatiecijfer. Rond deze berekening af op één decimaal. select d.voorl, d.naam 2, count(distinct begindatum) cursussen 3, count(*) cursisten 4, round(avg(evaluatie),1) evaluatie 5 from medewerkers d 6, inschrijvingen i 7 join 8 uitvoeringen u 9 using(cursus, begindatum) 10 where d.mnr = u.docent 11 group by d.voorl, d.naam; VOORL NAAM CURSUSSEN CURSISTEN EVALUATIE N SMIT AA ADAMS JM JANSEN Academic Service, Den Haag 15

16 MG SPIJKER SCJ SCHOTTEN 1 3 NB: We gaan bij het tellen van de cursussen uit van de veronderstelling dat een docent nooit op dezelfde dag twee cursussen kan geven. 9 Geef naam en voorletters van alle trainers die ooit tijdens een algemene cursus (type ALG) hun eigen chef als cursist hebben gehad. select distinct 2 m.naam, m.voorl 3 from medewerkers m 4, cursussen c 5, uitvoeringen u 6, inschrijvingen i 7 where m.mnr = u.docent 8 and m.chef = i.cursist 9 and c.code = u.cursus 10 and u.cursus = i.cursus 11 and u.begindatum = i.begindatum 12 and c.type = 'ALG'; NAAM VOORL SMIT N 10 Hebben we op een van de cursuslocaties op enig moment twee lokalen tegelijkertijd in gebruik gehad? select u1.locatie 2, u1.begindatum, u1.cursus 3, u2.begindatum, u2.cursus 4 from uitvoeringen u1 5, uitvoeringen u2 6, cursussen c 7 where u1.locatie = u2.locatie 8 and (u1.begindatum < u2.begindatum or 9 u1.cursus <> u2.cursus ) 10 and u1.cursus = c.code 11 and u2.begindatum between u1.begindatum 12 and u1.begindatum + c.lengte; LOCATIE BEGINDATUM CURSUS BEGINDATUM CURSUS DE MEERN 01-FEB-2000 JAV 03-FEB-2000 XML We zoeken dus twee verschillende cursusuitvoeringen op dezelfde locatie, die elkaar overlappen. Het blijkt dat de Java-cursus van 1 februari 2000 in De Meern overlapt met de XML-cursus die twee dagen later start; de Java-cursus duurt namelijk vier dagen. 11 Geef een matrix-overzicht (voor elke afdeling een kolom, voor elke functie een rij) met in iedere cel het aantal medewerkers. In een query is het dynamisch bepalen van het aantal kolommen ondoenlijk; ga daarom uit van de afdelingsnummers 10, 20 en 30. Academic Service, Den Haag 16

17 select m.functie 2, sum(case m.afd when 10 then 1 else 0 end) as afd_10 3, sum(case m.afd when 20 then 1 else 0 end) as afd_20 4, sum(case m.afd when 30 then 1 else 0 end) as afd_30 5 from medewerkers m 6 group by m.functie; FUNCTIE AFD_10 AFD_20 AFD_ BOEKHOUDER DIRECTEUR MANAGER TRAINER VERKOPER Zijn de twee queries in figuur 8.45 en 8.46 equivalent? Onderzoek de queries nader, en verklaar het eventuele verschil. Als we de FEEDBACK-instelling van SQL*Plus laag genoeg zetten, dan wordt het verschil meteen duidelijk: set feedback 1 select u.locatie from uitvoeringen u 2 MINUS 3 select a.locatie from afdelingen a; LOCATIE MAASTRICHT 2 rows selected. select DISTINCT u.locatie 2 from uitvoeringen u 3 where u.locatie not in 4 (select a.locatie 5 from afdelingen a); LOCATIE MAASTRICHT 1 row selected. Er bestaat een cursusuitvoering waarvan de locatie onbekend is, en zoals we inmiddels weten kunnen we niet voorzichtig genoeg zijn met null-waarden. In de eerste query komt die null-waarde in het resultaat voor, omdat hij er door de MINUS-operator niet wordt uitgehaald. Als de tweede query die bewuste rij aan het controleren is, wordt de WHERE-component: 3 where NULL not in ('LEIDEN','DE MEERN','UTRECHT','GRONINGEN') Deze conditie levert "onbekend" op, dus wordt de rij niet tot het resultaat toegelaten. Academic Service, Den Haag 17

18 Antwoorden opgaven paragraaf Het komt vaak voor dat een (junior) docent een cursus eerst bij een collega volgt voordat hij hem zelf voor het eerst geeft. Voor welke docent/cursus-combinaties is dat gebeurd? Deze opgave is niet eenvoudig; hij kan op vele manieren worden opgelost. De hier gegeven oplossing, gebaseerd op gebruik van de EXISTS-operator, is als volgt te lezen: Zoek cursusuitvoeringen waarvoor geldt dat er voor de docent een eerdere deelname aan diezelfde cursus bestaat als cursist, èn waarvoor geldt dat het de eerste keer is dat de docent de cursus geeft. Deze laatste toevoeging is nodig, anders zouden ook de gevallen geven-volgen-geven verschijnen. select u.cursus, u.docent 2 from uitvoeringen u 3 where exists 4 (select i.* 5 from inschrijvingen i 6 where i.cursist = u.docent 7 and i.cursus = u.cursus 8 and i.begindatum < u.begindatum) 9 and not exists 10 (select eu.* 11 from uitvoeringen eu 12 where eu.cursus = u.cursus 13 and eu.docent = u.docent 14 and eu.begindatum < u.begindatum); CURSUS DOCENT JAV 7876 OAG Sterker nog: als de beginnende docent de cursus dan voor het eerst geeft, zit de docent waarvan hij eerder de kunst had afgekeken ter ondersteuning als deelnemer in het lokaal. Spoor dit soort cursus/junior/senior-combinaties op. Laten we deze opgave voor de variatie eens met een join oplossen: select u1.cursus 2, u1.docent as senior 3, u2.docent as junior 4 from uitvoeringen u1 5, inschrijvingen i1 6, uitvoeringen u2 7, inschrijvingen i2 8 where u1.cursus = i1.cursus -- join i1 met u1 9 and u1.begindatum = i1.begindatum 10 and u2.cursus = i2.cursus -- join i2 met u2 11 and u2.begindatum = i2.begindatum 12 and u1.cursus = u2.cursus -- u1 en u2 dezelfde cursus 13 and u1.begindatum < u2.begindatum -- maar u1 is eerder dan u2 14 and u1.docent = i2.cursist -- docent u1 volgt u2 15 and u2.docent = i1.cursist -- docent u2 volgt u1 16 ; CURSUS SENIOR JUNIOR JAV Academic Service, Den Haag 18

19 3 Welke medewerkers hebben nog nooit een cursus gegeven? In eerste instantie zouden we misschien verwachten dat beide hieronder gegeven oplossingen correct zijn. Let echter op de verschillende resultaten. Bepaal zelf wat de juiste oplossing is. select m.* 2 from medewerkers m 3 where m.mnr not in (select u.docent 4 from uitvoeringen u); no rows selected select m.* 2 from medewerkers m 3 where not exists (select u.docent 4 from uitvoeringen u 5 where u.docent = m.mnr); MNR NAAM VOORL FUNCTIE CHEF GBDATUM MAANDSAL COMM AFD ALDERS JAM VERKOPER FEB DE WAARD TF VERKOPER FEB MARTENS P VERKOPER SEP BLAAK R MANAGER NOV CLERCKX AB MANAGER JUN DE KONING CC DIRECTEUR 17-NOV DEN DRAAIER JJ VERKOPER SEP JANSEN R BOEKHOUDER DEC MOLENAAR TJA BOEKHOUDER JAN rows selected. Voor beide oplossingen is wat te zeggen. Het is namelijk zo dat er cursus-uitvoeringen voorkomen met een null-waarde in de DOCENT-kolom. Als we deze null-waarden opvatten als docent onbekend dan kunnen we dus nooit met zekerheid zeggen dat een bepaalde medewerker nog nooit een cursus heeft gegeven. De tweede query behandelt de null-waarden duidelijk anders; we moeten dus onze vraag iets preciezer formuleren om te kunnen bepalen welke oplossing gewenst is. 4 Welke werknemers hebben alle bouwcursussen (type BLD) gevolgd? Ze hebben namelijk recht op korting. Dit is geen gemakkelijke opgave. We geven hier twee oplossingen. select m.mnr, m.naam, m.voorl 2 from medewerkers m 3 where not exists 4 (select c.* 5 from cursussen c 6 where c.type = 'BLD' 7 and not exists 8 (select i.* 9 from inschrijvingen i 10 where i.cursus = c.code 11 and i.cursist = m.mnr 12 ) 13 ); Academic Service, Den Haag 19

20 MNR NAAM VOORL ALDERS JAM Alternatieve oplossing, met een GROUP BY: select m.mnr, m.naam, m.voorl 2 from medewerkers m 3, cursussen c 4, inschrijvingen i 5 where i.cursus = c.code 6 and i.cursist = m.mnr 7 and c.type = 'BLD' 8 group by m.mnr, m.naam, m.voorl 9 having count(distinct i.cursus)=(select count(*) 10 from cursussen 11 where type='bld'); MNR NAAM VOORL ALDERS JAM 5 Wie hebben (tenminste) dezelfde cursussen gevolgd als medewerker 7788 gevolgd heeft? Dit is ook geen gemakkelijke opgave. De hier gegeven constructie met de MINUS-operator en een gecorreleerde subquery is elegant. Let overigens op de plaats van de ontkenning. De oplossing kan het beste als volgt worden gelezen: Geef alle medewerkers (behalve 7788 zelf) waarvoor geldt dat er géén cursus is die 7788 wèl heeft gevolgd, en zij niet. select m.naam,m.voorl 2 from medewerkers m 3 where m.mnr <> and not exists 5 (select i1.cursus 6 from inschrijvingen i1 7 where i1.cursist = MINUS 9 select i2.cursus 10 from inschrijvingen i2 11 where i2.cursist = m.mnr); NAAM VOORL ALDERS JAM BLAAK R DE KONING CC ADAMS AA Merk overigens de treffende gelijkenis op van deze opgave en de vorige opgave; het zijn beide voorbeelden uit de categorie deelverzamelingproblemen. De twee gegeven oplossingsmethoden zijn dan ook uitwisselbaar. 6 Geef de gegevens van alle medewerkers waarvan het maandsalaris en de commissie overeenkomen met het maandsalaris en de commissie van (minstens) een medewerker van Academic Service, Den Haag 20

Zelftest SQL Workshop

Zelftest SQL Workshop Zelftest SQL Workshop Document: n0087test.fm 25/06/2014 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INLEIDING BIJ DE ZELFTEST SQL WORKSHOP Handleiding Deze test

Nadere informatie

SQL is opgebouwd rond een basisinstructie waaraan één of meerdere componenten worden toegevoegd.

SQL is opgebouwd rond een basisinstructie waaraan één of meerdere componenten worden toegevoegd. BASISINSTRUCTIES SQL SQL : Structured Query Language is een taal gericht op het ondervragen van een relationele database en die aan veel klassieke databasemanagementsystemen kan worden gekoppeld. SQL is

Nadere informatie

SQL Aantekeningen 3. Maarten de Rijke mdr@science.uva.nl. 22 mei 2003

SQL Aantekeningen 3. Maarten de Rijke mdr@science.uva.nl. 22 mei 2003 SQL Aantekeningen 3 Maarten de Rijke mdr@science.uva.nl 22 mei 2003 Samenvatting In deze aflevering: het selecteren van tuples, operaties op strings, en aggregatie functies. Verder kijken we naar iets

Nadere informatie

Structured Query Language (SQL)

Structured Query Language (SQL) Structured Query Language (SQL) Huub de Beer Eindhoven, 4 juni 2011 Database: in essentie 0 of meer tabellen elke tabel nul of meer kolommen (of velden) elke tabel nul of meer unieke rijen elke query werkt

Nadere informatie

Elfde-Liniestraat 24 3500 Hasselt Schooljaar 2009-2010 TINFO POKER GAME Oracle Scripts

Elfde-Liniestraat 24 3500 Hasselt Schooljaar 2009-2010 TINFO POKER GAME Oracle Scripts Elfde-Liniestraat 24 3500 Hasselt Schooljaar 2009-2010 TINFO POKER GAME Oracle Scripts Studenten: Peter Asnong Rik Broens Tom De Keyser Daan Gielen Kris Gregoire Koen Olaerts Toon Wouters Inhoudsopgave

Nadere informatie

DBMS. DataBase Management System. Op dit moment gebruiken bijna alle DBMS'en het relationele model. Deze worden RDBMS'en genoemd.

DBMS. DataBase Management System. Op dit moment gebruiken bijna alle DBMS'en het relationele model. Deze worden RDBMS'en genoemd. SQL Inleiding relationele databases DBMS DataBase Management System!hiërarchische databases.!netwerk databases.!relationele databases.!semantische databases.!object oriënted databases. Relationele databases

Nadere informatie

1. Inleiding... 2 1.1. Inleiding SQL... 3 1.1.1. Inleiding... 3 1.1.2. Database, databaseserver en databasetaal... 4 1.1.3. Het relationele model...

1. Inleiding... 2 1.1. Inleiding SQL... 3 1.1.1. Inleiding... 3 1.1.2. Database, databaseserver en databasetaal... 4 1.1.3. Het relationele model... 1. Inleiding... 2 1.1. Inleiding SQL... 3 1.1.1. Inleiding... 3 1.1.2. Database, databaseserver en databasetaal... 4 1.1.3. Het relationele model... 4 1.1.4. Wat is SQL?... 6 1.1.5. Verschillende categorieên

Nadere informatie

SQL manipulatietaal. We kunnen er data mee toevoegen, wijzigen en verwijderen uit een database.

SQL manipulatietaal. We kunnen er data mee toevoegen, wijzigen en verwijderen uit een database. SQL manipulatietaal We kunnen er data mee toevoegen, wijzigen en verwijderen uit een database. Basiscommando's: INSERT : toevoegen van gegevens DELETE : verwijderen van gegevens UPDATE : wijzigen van gegevens

Nadere informatie

SQL STATEMENTS. Deze kolom kan grote stukken tekst aan en is bedoeld om tekst erin de plaatsen. Geheel getal, bijvoorbeeld 8, 63, 835 NUMERIC

SQL STATEMENTS. Deze kolom kan grote stukken tekst aan en is bedoeld om tekst erin de plaatsen. Geheel getal, bijvoorbeeld 8, 63, 835 NUMERIC Aantekeningen IRDB Vak: IRDB > Infrma1ca Rela1nele DataBase Onderstaande database scripts zijn gebaseerd p PstgreSQL. Standaarden Schrijf SQL wrden al1jd in hfdlefers, k al werkt het met kleine lefers;

Nadere informatie

Les S-02: Meer geavanceerde SQL-instructies

Les S-02: Meer geavanceerde SQL-instructies Les S-02: Meer geavanceerde SQL-instructies 2.0 Overzicht les 1: De basisvorm van een SQL query ziet er als volgt uit: (DISTINCT) selecteer de velden uit de tabel waar de volgende voorwaarde geldt ; Bij

Nadere informatie

Databases - Inleiding

Databases - Inleiding Databases Databases - Inleiding Een database is een verzameling van een aantal gegevens over een bepaald onderwerp: een ledenbestand van een vereniging, een forum, login gegevens. In een database worden

Nadere informatie

SQL: oefenen queries

SQL: oefenen queries Oefenen opstellen queries in SQL Hierna vind je per database voor iedere soort vragen in het boek Databases en SQL twee voorbeeldvragen. Bij iedere vraag wordt het antwoord gegeven samen met de uitkomst.

Nadere informatie

Databases en SQL Foundation (DBSQLF.NL)

Databases en SQL Foundation (DBSQLF.NL) Databases en SQL Foundation (DBSQLF.NL) EXIN Hét exameninstituut voor ICT ers Janssoenborch - Hoog Catharijne Godebaldkwartier 365 3511 DT Utrecht Postbus 19147 3501 DC Utrecht Nederland T +31 30 234 48

Nadere informatie

Zelftest SQL. Document: n0453test.fm 19/04/2012. ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium

Zelftest SQL. Document: n0453test.fm 19/04/2012. ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium Zelftest SQL Document: n0453test.fm 19/04/2012 ABIS Training & Consulting P.. Box 220 B-3000 Leuven Belgium TRAINING & CNSULTING INLEIDING BIJ DE ZELFTEST SQL Korte handleiding Deze test heeft als bedoeling

Nadere informatie

Sparse columns in SQL server 2008

Sparse columns in SQL server 2008 Sparse columns in SQL server 2008 Object persistentie eenvoudig gemaakt Bert Dingemans, e-mail : info@dla-os.nl www : http:// 1 Content SPARSE COLUMNS IN SQL SERVER 2008... 1 OBJECT PERSISTENTIE EENVOUDIG

Nadere informatie

Inhoud. Voorwoord Belangrijkste kenmerken van dit boek De opzet van dit boek Over de auteur Woord van dank

Inhoud. Voorwoord Belangrijkste kenmerken van dit boek De opzet van dit boek Over de auteur Woord van dank v Voorwoord Belangrijkste kenmerken van dit boek De opzet van dit boek Over de auteur Woord van dank 1 Introductie: data en informatie 1.0 Wat leer je in dit hoofdstuk? 1.1 Verschil tussen gegevens en

Nadere informatie

SQL: query taal met. woorden. ISO SQL: Structured Query Language. de SQL basis query structuur. voorbeeld: doel: intuitieve query taal

SQL: query taal met. woorden. ISO SQL: Structured Query Language. de SQL basis query structuur. voorbeeld: doel: intuitieve query taal SQL: query taal met woorden ISO SQL: Structured Query Language Prof. dr. Paul De Bra Gebaseerd op: Database System Concepts, 5th Ed. doel: intuitieve query taal gebruikt Engelse woorden: select, from,

Nadere informatie

Toelichting Validatieregels DBC GGZ RG12

Toelichting Validatieregels DBC GGZ RG12 Toelichting Validatieregels DBC GGZ RG12 Versie 20111201 Ingangsdatum: 1 januari 2012 Inhoudsopgave 1 Inleiding...3 2 Algemene gegevens van de tabel...4 3 Specificatie van de validatieregels...6 4 De validatieregels...8

Nadere informatie

Microsoft SQL. opdracht. Regio College Zaanstreek Waterland Afdeling ICT Opleidingen

Microsoft SQL. opdracht. Regio College Zaanstreek Waterland Afdeling ICT Opleidingen Microsoft SQL opdracht Regio College Zaanstreek Waterland Afdeling ICT Opleidingen In deze opdracht wordt gebruik gemaakt van de database ORCADB, waarop drie tabellen zijn gedefinieerd namelijk: EMP, DEPT

Nadere informatie

ISO SQL: Structured Query Language

ISO SQL: Structured Query Language ISO SQL: Structured Query Language Prof. dr. Paul De Bra Gebaseerd op: Database System Concepts, 5th Ed. SQL: query taal met woorden doel: intuitieve query taal gebruikt Engelse woorden: select, from,

Nadere informatie

hoofdstuk 9 referentiële integriteit waarborgen overige constraints 9.1 Referentiële integriteit relationele databases 9.1

hoofdstuk 9 referentiële integriteit waarborgen overige constraints 9.1 Referentiële integriteit relationele databases 9.1 relationele databases 9.1 hoofdstuk 9 referentiële integriteit waarborgen overige constraints 9.1 Referentiële integriteit Als voorbeeld nemen we een eenvoudige database, bestaande uit twee tabellen. De

Nadere informatie

SQL & Relationele datamodellen in interactieve media

SQL & Relationele datamodellen in interactieve media SQL & Relationele datamodellen in interactieve media HVA-CMD-V1-datamodelleren oefeningen deel 1: SQL 2012-2013 Inhoud Inhoud... 2 Selecties uit een enkelvoudige datatabel... 3 Selecties uit een meerdere

Nadere informatie

Zelftest DB2 for z/os basiscursus

Zelftest DB2 for z/os basiscursus Zelftest DB2 for z/os basiscursus Document: n1067test.fm 22/01/2013 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INLEIDING BIJ DE ZELFTEST DB2 FOR Z/OS BASISCURSUS

Nadere informatie

Databank - Basis 1. Inhoud. Computervaardigheden en Programmatie. Hoofdstuk 4 Databank - Basis. Terminologie. Navigeren door een Venster

Databank - Basis 1. Inhoud. Computervaardigheden en Programmatie. Hoofdstuk 4 Databank - Basis. Terminologie. Navigeren door een Venster 4. 4. Inhoud rste BAC Toegepaste Biologische Wetenschappen Hoofdstuk 4 Databank Terminologie, Navigeren, Importeren Tabellen Records/Velden manipuleren Queries (Vragen) [Ook in SQL] sorteren filter volgens

Nadere informatie

DATAMODEL SQL. Middelbare School. Versie 1.0 Datum 30 oktober 2010 Auteur Mark Nuyens, studentnummer: 500625333 Groep TDI 1

DATAMODEL SQL. Middelbare School. Versie 1.0 Datum 30 oktober 2010 Auteur Mark Nuyens, studentnummer: 500625333 Groep TDI 1 DATAMODEL SQL Middelbare School Versie 1.0 Datum 30 oktober 2010 Auteur Mark Nuyens, studentnummer: 500625333 Groep TDI 1 INHOUDSOPGAVE 1. Informatiedomein 3 1.1 Informatiedomein 3 1.2 Toepassingen 3 2.

Nadere informatie

Integriteitsbewaking bij een relationele database

Integriteitsbewaking bij een relationele database Integriteitsbewaking bij een relationele database Bij het ontwikkelen van een informatiesysteem voor een organisatie moet er koste wat koste voor gezorgd worden, dat er geen tegenstrijdige gegevens in

Nadere informatie

SQL datadefinitietaal

SQL datadefinitietaal SQL datadefinitietaal We kunnen er het schema van de database mee bepalen: metadata toevoegen, wijzigen en verwijderen uit een database. Basiscommando's: CREATE : toevoegen van metagegevens DROP : verwijderen

Nadere informatie

SQL & Datamodelleren

SQL & Datamodelleren SQL & Datamodelleren HVA-CMD-V1-datamodelleren Algemene handleiding bij het lesprogramma 2012-2013 Inhoud Inhoud... 2 Inleiding... 3 Leerdoelen:... 3 Plaats in het leerplan:... 3 Werkwijze:... 3 Lesstof:...

Nadere informatie

Data Manipulatie. Query Talen. / Informatica

Data Manipulatie. Query Talen. / Informatica Data Manipulatie Query Talen 1 Queries maken in TC en SQL (ter verduidelijking) We kijken nog even naar bier-query q: Geef alle paren van drinkers die niet samen naar een kroeg kunnen gaan en daar allebei

Nadere informatie

Het SQL Leerboek zevende editie Antwoorden op Opgaven

Het SQL Leerboek zevende editie Antwoorden op Opgaven Het SQL Leerboek zevende editie Antwoorden op Opgaven Auteur: Rick F. van der Lans Versie: 1.0 Datum: Februari 2012 2 Het SQL Leerboek Antwoorden op opgaven Februari 2012 Alle rechten voorbehouden. Alle

Nadere informatie

Les 11 : Basis SQL (deel2).

Les 11 : Basis SQL (deel2). Les 11 : Basis SQL (deel2). Wat is SQL? SQL gaan we gebruiken voor het raadplegen van de database. We gaan gegevens invoegen in de database, selecteren, aanpassen en verwijderen van de database. Om dit

Nadere informatie

Secure Application Roles

Secure Application Roles Secure Application Roles Beheer de toegang tot de database 1. Inleiding Het realiseren van geautoriseerde toegang tot een database lijkt eenvoudig. Echter, vaak blijkt dat dezelfde combinatie van gebruikersnaam

Nadere informatie

Les 2 Eenvoudige queries

Les 2 Eenvoudige queries Les 2 Eenvoudige queries XAMP Apache server ( http ) mysql server PHP myadmin IAM SQL oefeningen Database phpmyadmin Import : sql_producten.sql, sql_winkel.sql, sql_festival.sql SAMS SQL in 10 minuten

Nadere informatie

Computerclub Volwassenen, Jeugd en Informatica vzw www.vji.be

Computerclub Volwassenen, Jeugd en Informatica vzw www.vji.be Voorbeelden en oefeningen SQL 1 Computerclub Volwassenen, Jeugd en Informatica vzw www.vji.be Voorbeelden en oefeningen bij demo SQL Voorbeelden en oefeningen Stefan Cruysberghs www.scip.be Februari 2003

Nadere informatie

TECHNISCHE UNIVERSITEIT EINDHOVEN. Faculteit Wiskunde en Informatica

TECHNISCHE UNIVERSITEIT EINDHOVEN. Faculteit Wiskunde en Informatica TECHNISCHE UNIVERSITEIT EINDHOVEN Faculteit Wiskunde en Informatica Extra Tentamen Databases 1, 2M400, 8 oktober 2003. Alle uitwerkingen van de opgaven moeten worden ingevuld in de daarvoor bestemde vrije

Nadere informatie

Inleiding... 3. 1 Databases en Data Base Management Systems... 3. 2 Tabellen... 3. 3 Wat is SQL?... 5

Inleiding... 3. 1 Databases en Data Base Management Systems... 3. 2 Tabellen... 3. 3 Wat is SQL?... 5 1 Inhoudsopgave. Inleiding.... 3 1 Databases en Data Base Management Systems.... 3 2 Tabellen.... 3 3 Wat is SQL?... 5 4 Gegevens opvragen (deel 1).... 5 4.1 Boolean operatoren.... 7 4.2 IN en BETWEEN

Nadere informatie

SQL. Datamodellering 2008

SQL. Datamodellering 2008 SQL Datamodellering 2008 1 Wat is SQL? SQL is een standaard interactieve bevragings- en definitietaal voor relationele DBMSen SQL is een set-based, declaratieve query-taal (dus niet procedureel!) DB-leveranciers

Nadere informatie

SQL. Wat is SQL? Geschiedenis SQL SQL DMO 2008 1. Datamodellering 2008

SQL. Wat is SQL? Geschiedenis SQL SQL DMO 2008 1. Datamodellering 2008 SQL Datamodellering 2008 1 Wat is SQL? is een standaard interactieve bevragings- en definitietaal voor relationele DBMSen is een set-based, declaratieve query-taal (dus niet procedureel!) DB-leveranciers

Nadere informatie

Digitaal Staatsexamen VWO 2010

Digitaal Staatsexamen VWO 2010 Onderdeel I - Meerkeuzevragen Kies het juiste alternatief. Digitaal Staatsexamen VWO 2010 1) Wat is de decimale waarde van het binaire getal 101110? A. 4 B. 23 C. 46 D. 92 2) Bekijk bovenstaand model voor

Nadere informatie

PL/SQL. Declaraties van variabelen. Structuur PL/SQL is een blok-georiënteerde taal: Toekenningen

PL/SQL. Declaraties van variabelen. Structuur PL/SQL is een blok-georiënteerde taal: Toekenningen PL/SQL PL/SQL is een procedurele uitbreiding op SQL, omdat SQL op zich niet krachtig genoeg is om complexe databank applicaties te ontwikkelen. Server-side functies, of stored procedures worden op de database

Nadere informatie

2 Specificatie In deze tabel staat voor welk crebotraject de leereenheid is gemaakt Crebotraject code: 95311

2 Specificatie In deze tabel staat voor welk crebotraject de leereenheid is gemaakt Crebotraject code: 95311 LEEREENHEID PhP 2 Dit document bestaat uit twee onderdelen - Onderdeel Leereenheid - Onderdeel Onderwijsproduct 1 Naam leereenheid In deze tabel staat de naam en het type van de leereenheid Leereenheid

Nadere informatie

Informatica toets vwo 6 Databases

Informatica toets vwo 6 Databases Informatica toets vwo 6 Databases Deze toets bestaat uit drie gedeelten met elk een andere casus: 1. een opdracht waarin je een ER-diagram via het relationeel model omzet in een database specificatie in

Nadere informatie

Hoofdstuk 17: Logische & Informatiefuncties en operatoren

Hoofdstuk 17: Logische & Informatiefuncties en operatoren Hoofdstuk 17: Logische & Informatiefuncties en operatoren 17.0 Inleiding Logische formules testen of een conditie waar is (het resultaat van de formule zal dan de waarde WAAR hebben) of onwaar (in dit

Nadere informatie

1. * Database worden vaak gebruikt in Client-Server architectuur.

1. * Database worden vaak gebruikt in Client-Server architectuur. Naam Studentnummer Klas Herkansing [ ] ja, nee [ ], zoja uit welk jaar? kernbegrippen relationele database Minimaal drie van de vijf vragen goed beantwoorden. 1. * Database worden vaak gebruikt in Client-Server

Nadere informatie

Zelftest Oracle basiscursus

Zelftest Oracle basiscursus Zelftest Oracle basiscursus Document: N0475Test.fm 14/01/2008 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INLEIDING BIJ DE ZELFTEST ORACLE BASISCURSUS Dit is een

Nadere informatie

2 Specificatie In deze tabel staat voor welk crebotraject de leereenheid is gemaakt Crebotraject code: 95311

2 Specificatie In deze tabel staat voor welk crebotraject de leereenheid is gemaakt Crebotraject code: 95311 LEEREENHEID Oracle Dit document bestaat uit twee onderdelen - Onderdeel Leereenheid - Onderdeel Onderwijsproduct 1 Naam leereenheid In deze tabel staat de naam en het type van de leereenheid Leereenheid

Nadere informatie

Wijzigingen Universe OSIRIS Manager versie 5.12.1/01 mei 2012

Wijzigingen Universe OSIRIS Manager versie 5.12.1/01 mei 2012 Inleiding Dit document beschrijft de wijzigingen in de Universe osman release 5.12.1/01 in vergelijking met release 5.11.2/01. Een aantal wijzigingen heeft betrekking op melding 21550 van TUD en melding

Nadere informatie

COMPUTERWOORDEN.NL SQL - basis

COMPUTERWOORDEN.NL SQL - basis Inhoudsopgave... 1 Introductie: SQL... 7 SQL... 7 SQL geschiedenis...7 SQL dialecten...7 Basis SQL-commando's...8 CREATE TABLE... 8... 8... 8 Datatype...8 Grootte...10 Veldtype... 10 DELETE FROM... 10...

Nadere informatie

Hoofdstuk: 1 Principes van databases

Hoofdstuk: 1 Principes van databases DBSQLF Databases en SQL Hoofdstuk: 1 Principes van databases aant Css: 4 732 blz 9 1.1 Doel ve database - om op het juiste moment op de juiste plaats de juiste gegevens beschikbaar te hebben richten we

Nadere informatie

Informatie verwerking en databases... 4. RDBMS en tabellen... 8 SQL SELECT... 8 SQL WHERE... 10 SQL INSERT... 14 SQL UPDATE... 17 SQL DELETE...

Informatie verwerking en databases... 4. RDBMS en tabellen... 8 SQL SELECT... 8 SQL WHERE... 10 SQL INSERT... 14 SQL UPDATE... 17 SQL DELETE... Databases+SQL 1 Inhoud Informatie verwerking en databases... 4 RDBMS en tabellen... 8 SQL SELECT... 8 SQL WHERE... 10 SQL INSERT... 14 SQL UPDATE... 17 SQL DELETE... 18 SQL ORDER BY... 19 SQL Aggregate

Nadere informatie

NHibernate als ORM oplossing

NHibernate als ORM oplossing NHibernate als ORM oplossing Weg met de SQL Queries Wat is ORM? ORM staat in dit geval voor Object Relational Mapping, niet te verwarren met Object Role Modeling. ORM vertaalt een objectmodel naar een

Nadere informatie

SQL / Systeemanalyse

SQL / Systeemanalyse SQL / Systeemanalyse Wie ben ik Hans de Wit 44 jaar HBO BI in deeltijd gedaan Sinds 2008 werkzaam met BI / DWH med.hro.nl/wihan SQL De gegevens in een database vormen de grondstof voor informatie De informatie

Nadere informatie

9 H. Flits Zwanenveld 89-90 Nijmegen Jeugd1 10 L. Willemsen Kasteel 4 Wychen Jeugd1 12 M.E.P. Graag Broerdijk 234 Nijmegen Heren 12/8/89 19/8/89 36

9 H. Flits Zwanenveld 89-90 Nijmegen Jeugd1 10 L. Willemsen Kasteel 4 Wychen Jeugd1 12 M.E.P. Graag Broerdijk 234 Nijmegen Heren 12/8/89 19/8/89 36 0 Inleiding SQL: Structured Query Language 0. Informatiesystemen, gegevensbanken en tabellen Bij het automatiseren van gegevensbanken maakt men tegenwoordig bijna altijd gebruik van gegevensbank-beheerssystemen

Nadere informatie

U ziet de progressie van de download aan de groene blokjes in het balkje helemaal onder aan de pagina.

U ziet de progressie van de download aan de groene blokjes in het balkje helemaal onder aan de pagina. Gegevens exporteren en bewerken vanuit GRIEL Stap 1. Selecteer de juiste gegevens en download deze 1. Stel het datumfilter in op de gewenste periode. Druk op ververs. 2. Maak met behulp van het filter

Nadere informatie

Miniles gegevensbanken bevragen met SQL

Miniles gegevensbanken bevragen met SQL Miniles gegevensbanken bevragen met SQL In deze miniles gaat het over gegevensbanken of databases. Dit zijn bestanden waarin gegevens kunnen worden opgeslagen. Het is dan van belang dat je op een eenvoudige

Nadere informatie

Release Notes. Afdrukdatum: 2011/12/20

Release Notes. Afdrukdatum: 2011/12/20 Release Notes Afdrukdatum: 2011/12/20 Dit document beschrijft vanuit technisch oogpunt de aanpassingen in Hi-Ant aan de betreffende versie. Deze tekst is geenszins bedoeld als document naar de eindgebruiker,

Nadere informatie

voorbeeldexamen I-Tracks Databases and SQL Foundation Voorbeeldexamen DBSQLF Uitgave juni 2006

voorbeeldexamen I-Tracks Databases and SQL Foundation Voorbeeldexamen DBSQLF Uitgave juni 2006 voorbeeldexamen Databases and SQL Foundation (DBSQLF) I-Tracks Databases and SQL Foundation Voorbeeldexamen DBSQLF Uitgave juni 2006 inhoud 3 inleiding 4 voorbeeldexamen 21 antwoordindicatie 44 beoordeling

Nadere informatie

Relationele database. Het relationele model

Relationele database. Het relationele model Module SQL Relationele database. Een database, gegevensbank of databank is een verzameling van gegevens, ingericht met oog op makkelijke raadpleging en gebruik. Databases spelen een belangrijke rol in

Nadere informatie

In tabel 1 zie je de eenmaandsrendementen van het aandeel LUXA over 2005, steeds afgerond op twee decimalen.

In tabel 1 zie je de eenmaandsrendementen van het aandeel LUXA over 2005, steeds afgerond op twee decimalen. Beleggen in aandelen De waarde van aandelen kan sterk schommelen. Zo kan een aandeel op dit moment 23,30 euro waard zijn en over een maand gezakt zijn tot 21,10 euro, dat is een daling met ongeveer 9,44%.

Nadere informatie

Relationele Databases 2002/2003

Relationele Databases 2002/2003 1 Relationele Databases 2002/2003 Hoorcollege 4 8 mei 2003 Jaap Kamps & Maarten de Rijke April Juli 2003 Plan voor Vandaag Praktische dingen 3.1, 3.2, 3.3, 3.4, 3.5. SQL Aantekeningen 2 Tabellen. Theorie

Nadere informatie

Relationele Databases 2002/2003

Relationele Databases 2002/2003 Relationele Databases 2002/2003 Hoorcollege 4 8 mei 2003 Jaap Kamps & Maarten de Rijke April Juli 2003 1 Plan voor Vandaag Praktische dingen Huiswerk 3.1, 3.2, 3.3, 3.4, 3.5. SQL Aantekeningen 2 Tabellen.

Nadere informatie

Medical Intelligence in de praktijk

Medical Intelligence in de praktijk Medical Intelligence in de praktijk Een kijkje in de MI straat in het UMCU Aafke Jongsma & Michiel Vuurboom Visie Het uitwisselen van oplossingen en ervaringen ten behoeve van het verzamelen en ontsluiten

Nadere informatie

Les S-01: De basisbeginselen van SQL

Les S-01: De basisbeginselen van SQL Les S-01: De basisbeginselen van SQL 1.0 Relationele databases en SQL Een database is een bestand waarin gegevens worden opgeslagen in de vorm van tabellen. Zo kan een huisarts met behulp van een database

Nadere informatie

Hoofdstuk 13: Sorteren & Filteren* 2010

Hoofdstuk 13: Sorteren & Filteren* 2010 Hoofdstuk 13: Sorteren & Filteren* 2010 13.0 Inleiding Spreadsheets bieden meer grip op gegevens. De twee beste manieren om meer grip te krijgen, is door de gegevens te sorteren of door bepaalde waarden

Nadere informatie

Dienstregeling 2015 KBS Sluis Klein Willebroek

Dienstregeling 2015 KBS Sluis Klein Willebroek regeling 2015 KBS Sluis Klein Willebroek lijst van : januari 2015 Sluis Klein Willebroek donderdag 01 jan - - - - 13:34-00:00 Nieuwjaar vrijdag 02 jan - - 11:06 18:06 02:12 14:36 07:00 zaterdag 03 jan

Nadere informatie

Maak een analyse van deze gegevens door middel van ER-modellering.

Maak een analyse van deze gegevens door middel van ER-modellering. B Oefening: databanken B.1 Beschrijving van de gegevens Voor het creëren van een uurrooster is informatie in verband met opleidingen, activiteiten, docenten en lokalen nodig. Een opleiding wordt gekenmerkt

Nadere informatie

Wijzigingen Universe OSIRIS Manager versie 6.14.1/02 augustus 2014

Wijzigingen Universe OSIRIS Manager versie 6.14.1/02 augustus 2014 Inhoud Inleiding...2 Toelichting extra functionaliteit in release 6.14.1/02...2 Bepalen toetsdatum...2 Wens uitbereiding OSMAN universe met historie geldend resultaat...2 Wens 1: Een class met de historische

Nadere informatie

Gebruikers Handleiding

Gebruikers Handleiding Gebruikers Handleiding (De SQL module) Versie 2.14 Pagina 2 van 14 Versie 2.14 Inhoudsopgave NGP SQL...5 Het Menu... 6 De instellingen... 7 De database informatie... 9 Het Script... 10 Pagina 3 van 14

Nadere informatie

TECHNISCHE UNIVERSITEIT EINDHOVEN Faculteit Wiskunde en Informatica. Proeftentamen ISO (2R290), query-gedeelte, Oktober 2006

TECHNISCHE UNIVERSITEIT EINDHOVEN Faculteit Wiskunde en Informatica. Proeftentamen ISO (2R290), query-gedeelte, Oktober 2006 NAAM: IDENT. NR.: TECHNISCHE UNIVERSITEIT EINDHOVEN Faculteit Wiskunde en Informatica Proeftentamen ISO (2R290), query-gedeelte, Oktober 2006 Dit proeftentamen bestaat uit drie opgaven met een aantal deel-opgaven.

Nadere informatie

Handleiding configuratie en gebruik tekenmodule

Handleiding configuratie en gebruik tekenmodule Handleiding configuratie en gebruik tekenmodule B3Partners Inhoudsopgave 1 Inleiding...2 2 Configuratie tekenmodule...3 2.1 Database tabel...4 2.2 WMS Service...5 2.3 Gegevensbron en kaartlaag...6 2.4

Nadere informatie

Data Warehouse Script Generator Doel

Data Warehouse Script Generator Doel Data Warehouse Script Generator Doel Op basis van een aantal standaard sql scripts ( create table, create view ) een nieuwe sql script genereren welke alle objecten ( tables & views ) kan aanmaken in een

Nadere informatie

Het omzetten van een ER-diagram naar SQL

Het omzetten van een ER-diagram naar SQL Het omzetten van een ER-diagram naar SQL Huub de Beer Eindhoven, 4 juni 2011 Omzetting ER-diagram naar SQL in twee stappen 1: ER-Diagram relationeel model Onderwerp van hoofdstuk 3 Entiteittype relatie,

Nadere informatie

Dynamische gebruikersbeslissingen in SAP Workflow

Dynamische gebruikersbeslissingen in SAP Workflow Dynamische gebruikersbeslissingen in SAP Workflow Inleiding Een gebruikersbeslissing in een SAP Workflow definitie biedt de mogelijkheid om een optiescherm aan de gebruiker aan te bieden. Hiermee kan de

Nadere informatie

Inhoudsopgave. Theorie... 14 Praktijk... 14. Gegevens uit Database halen... 13 DML commando s... 14

Inhoudsopgave. Theorie... 14 Praktijk... 14. Gegevens uit Database halen... 13 DML commando s... 14 SQL 2013 Inhoudsopgave Inhoudsopgave... 2 SQL begrippen... 3 Maken Database... 4 Rechten voor een Database... 4 User aanmaken... 5 Rol Toekennen aan een user... 5 Backup... 6 Theorie... 6 In SQL... 6 SQL

Nadere informatie

Automatische Installatie op IIS server

Automatische Installatie op IIS server Automatische Installatie op IIS server In de map Web staat het installatiebestand : Je kan de install starten door het aanklikken van het msi bestand vanuit Verkenner. Na installatie is steeds een manuele

Nadere informatie

Wat zijn de verschillen tussen SPSS 9 en SPSS 10?

Wat zijn de verschillen tussen SPSS 9 en SPSS 10? Wat zijn de verschillen tussen SPSS 9 en SPSS 10? 1.1 De data-editor / het definiëren van variabelen 1.2 Het openen van bestanden 1.3 Output lezen 1.4 Mogelijke problemen 1.1.1 De data-editor Het grootste

Nadere informatie

Foutafhandeling in SQL

Foutafhandeling in SQL Algemene richtlijnen binnen de mogelijkheden van RDBMS en 4GL Foutafhandeling in SQL Toon Loonen Foutafhandeling van SQL-code is op veel projecten een achtergebleven gebied. Soms is er discussie of het

Nadere informatie

Oracle 11g R2 voor ontwikkelaars - deel 1

Oracle 11g R2 voor ontwikkelaars - deel 1 Oracle 11g R2 voor ontwikkelaars - deel 1 Lucas Jellema, Alex Nuijten - AMIS Services BV Introductie Vlak voor Oracle Open World 2009 was de release van het nieuwste vlaggenschip van Oracle: Database 11g,

Nadere informatie

FileMaker 13. Naslaggegevens voor SQL

FileMaker 13. Naslaggegevens voor SQL FileMaker 13 Naslaggegevens voor SQL 2013 FileMaker, Inc. Alle rechten voorbehouden. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054, VS FileMaker en Bento zijn handelsmerken van

Nadere informatie

6. Het maken van een database

6. Het maken van een database 6. Het maken van een database 6.1. Inleiding In hoofdstuk 5 heb je de oefendatabase gemaakt doormiddel van een script. In dit hoofdstuk ga je zelf een database maken en deze vullen met tabellen. Hiervoor

Nadere informatie

Editions Based Redefinition: Tijdens de verbouwing gaat de verkoop door. Lucas Jellema, Alex Nuijten - AMIS Services BV

Editions Based Redefinition: Tijdens de verbouwing gaat de verkoop door. Lucas Jellema, Alex Nuijten - AMIS Services BV Editions Based Redefinition: Tijdens de verbouwing gaat de verkoop door. Lucas Jellema, Alex Nuijten - AMIS Services BV In een vorige editie van Optimize hebben we bekeken wat voor nieuwe toeters en bellen

Nadere informatie

Release Notes. Afdrukdatum: 2008/10/06

Release Notes. Afdrukdatum: 2008/10/06 Release Notes Afdrukdatum: 2008/10/06 Dit document beschrijft vanuit technisch oogpunt de aanpassingen in Hi-Ant aan de betreffende versie. Deze tekst is geenszins bedoeld als document naar de eindgebruiker,

Nadere informatie

Datum, Tijd en Timer-object

Datum, Tijd en Timer-object IX. Datum, Tijd en Timer-object A. Hoe worden tijd en datum in VB aangeduid? Zowel datum als tijd worden als een getal met decimalen opgeslagen. Het gedeelte voor de komma geeft de datum aan, het gedeelte

Nadere informatie

Handleiding ChainWise Data import Module

Handleiding ChainWise Data import Module Handleiding ChainWise Data import Module Versie: 1.1 Datum: Januari 2013 Inhoudsopgave 2 Inleiding... 3 3 Uploaden naar tijdelijk tabel... 4 3.1 Uploaden... 4 3.2 Koppelingen... 4 3.3 Opslaan en Errors...

Nadere informatie

Samenstelling Levensloop Platina Fonds in 2015

Samenstelling Levensloop Platina Fonds in 2015 Samenstelling Levensloop Platina Fonds in 2015 januari 813,401 535,514 1,568 1,350,482.89 10,416.12 februari 835,453 519,550 4,203 1,359,207.13 9,964.25 maart 877,904 524,371 3,271 1,405,545.28 10,002.50

Nadere informatie

Zorg ervoor dat je een database hebt aangevraagd op http://stap.iam.hva.nl Open daarna het volgende adres in je browser:

Zorg ervoor dat je een database hebt aangevraagd op http://stap.iam.hva.nl Open daarna het volgende adres in je browser: WERKGROEP 1 OEFENINGEN Zorg ervoor dat je een database hebt aangevraagd op http://stap.iam.hva.nl Open daarna het volgende adres in je browser: http://stap.iam.hva.nl/phpmyadmin Log in met de gegevens

Nadere informatie

VERSCHILLENDE TARIEVEN VOOR MEER WINST

VERSCHILLENDE TARIEVEN VOOR MEER WINST VERSCHILLENDE TARIEVEN VOOR MEER WINST - LEERLING SuccesformulesVoorkant_Opmaak 1 06-10-14 10:08 Pagina 1 VERSCHILLENDE TARIEVEN VOOR MEER WINST 1 anigap 80:01 41-01-60 1 kaampo_tnakroovselumrofseccus

Nadere informatie

PROGRAMMA 2011-2012. Vak: informatica..

PROGRAMMA 2011-2012. Vak: informatica.. Vak: informatica.. Laag: Havo-. PROGRAMMA 2011-2012 week leerstof dagen toets overig 34-26.08 zomervakantie Bespreking PTA-404 Deze week: uitreiking van de Praktische Opdracht Programmeren Herhaling theorie

Nadere informatie

EMBEDDED SQL. Inleiding. Queries en update-opdrachten. Embedden en hostvariabelen

EMBEDDED SQL. Inleiding. Queries en update-opdrachten. Embedden en hostvariabelen Inleiding In het boek Databases & SQL wordt beschreven hoe opdrachten in de programmeertaal SQL gebruikt worden om de inhoud van een relationele database te raadplegen en te bewerken. SQL wordt daarbij

Nadere informatie

HOOFDSTUK 3. Imperatief programmeren. 3.1 Stapsgewijs programmeren. 3.2 If Then Else. Module 4 Programmeren

HOOFDSTUK 3. Imperatief programmeren. 3.1 Stapsgewijs programmeren. 3.2 If Then Else. Module 4 Programmeren HOOFDSTUK 3 3.1 Stapsgewijs programmeren De programmeertalen die tot nu toe genoemd zijn, zijn imperatieve of procedurele programmeertalen. is het stapsgewijs in code omschrijven wat een programma moet

Nadere informatie

Voorgeslacht rapport generator

Voorgeslacht rapport generator Beschrijving Voorgeslacht rapport generator versie 3.5 (16 mei 2006) auteur:berend Meijer De voorgeslacht rapport generator is een sjabloon voor gebruik met het genealogie-programma Aldfaer (www.aldfaer.nl).

Nadere informatie

Hoofdstuk 21: Gegevens samenvatten

Hoofdstuk 21: Gegevens samenvatten Hoofdstuk 21: Gegevens samenvatten 21.0 Inleiding In Excel kunnen grote (en zelfs ook niet zo grote) tabellen met getallen en tekst er nogal intimiderend uitzien. Echter, Excel komt helemaal tot haar recht

Nadere informatie

W I N D E X C C. ReleaseNotes 1.12

W I N D E X C C. ReleaseNotes 1.12 W I N D E X C C ReleaseNotes 1.12 INHOUD Inhoud 2 341 Op voeg abonnement toe ook aantal in kunnen vullen 4 335 Bijeenkomst kalender uitbreiden met maanden "Graag de kalender aanpassen zodat je makkelijk

Nadere informatie

Databases SQL - meerdere tabellen

Databases SQL - meerdere tabellen Databases SQL - meerdere tabellen Nut van een database Dilbert 1 Reservering Lezer Uitgave Filiaal Basis zaken Uitlening Exemplaar NB: er kan verschil in smaak zitten tussen M1a en S1a notatie Join : het

Nadere informatie

Informatica. Staatsexamen HAVO 2015. Nederl. Tijdvak 1 Vrijdag 29 mei 13.30 15.30 uur. College-examen schriftelijk. Opgavenboekje

Informatica. Staatsexamen HAVO 2015. Nederl. Tijdvak 1 Vrijdag 29 mei 13.30 15.30 uur. College-examen schriftelijk. Opgavenboekje Nederl Staatsexamen HAVO 205 Informatica Tijdvak Vrijdag 29 mei 3.30 5.30 uur College-examen schriftelijk Opgavenboekje Dit examen bestaat uit 35 opgaven. De eerste 20 opgaven zijn meerkeuze opgaven. Opgaven

Nadere informatie

Hoofdstuk 16: Zoek- en verwijzingsfuncties

Hoofdstuk 16: Zoek- en verwijzingsfuncties Hoofdstuk 16: Zoek- en verwijzingsfuncties 16.0 Inleiding Eén van de belangrijkste functies binnen Excel is de mogelijkheid om te zoeken naar een specifieke waarde binnen een groot aantal cellen met gegevens.

Nadere informatie

Holland Casino Eredivisie

Holland Casino Eredivisie Holland Casino Eredivisie bladzijde 1 Holland Casino Eredivisie 1 De formulering van het probleem Om aan te tonen welke ongekende mogelijkheden de Jet Engine biedt en om S(impel)QL aan een grondige test

Nadere informatie

We moeten de accommodaties selecteren die 3 sterren hebben, en in land met ID 10 zitten.

We moeten de accommodaties selecteren die 3 sterren hebben, en in land met ID 10 zitten. MySQL talk Trage website? Het optimaliseren van een bestaande website die een MySQL database heeft is niet altijd even makkelijk. Het probleem kan namelijk op veel verschillende plekken zitten: de database

Nadere informatie

Release Notes. Afdrukdatum: 2009/09/28

Release Notes. Afdrukdatum: 2009/09/28 Release Notes Afdrukdatum: 2009/09/28 Dit document beschrijft vanuit technisch oogpunt de aanpassingen in Hi-Ant aan de betreffende versie. Deze tekst is geenszins bedoeld als document naar de eindgebruiker,

Nadere informatie