Kruimeltje weetjes#

Professionalisering#

Per medio 2010 wordt krm geprofessionaliseerd.


  • backup maken database:
mysqldump krmdb --no-create-db --no-create-info -u root -p > mysqldumpkrm.sql
  • "unload" van database:
mysql> select * from peuter where datumtijdlaatstgewijzigd > '2007-06-25 07:00:00' order by nummer into outfile '/tmp/krmexport.sql' FIELDS TERMINATED BY '||' enclosed by '"' lines terminated by '\n';
Query OK, 62 rows affected (0.01 sec)
  • weer laden van unload:
mysql> load data infile '/home/metskem/krmexport.sql' replace into table peuter FIELDS TERMINATED BY '||' enclosed by '"' lines terminated by '\n';
Query OK, 124 rows affected (0.01 sec)
Records: 62  Deleted: 62  Skipped: 0  Warnings: 0

domein namen#

naamopmerking
www.kruimeltje.nlniet meer beschikbaar (Efteling)
www.kruimeltjerijssen.nlvrij
www.kruimeltje-rijssen.nlvrij
www.kruimeltje-rijssen-holten.nlvrij
www.kruimeltjerijssenholten.nlvrij
www.peuterspeelzaalkruimeltje.nlvrij <== deze is het geworden
www.peuterspeelzaal-kruimeltje.nlvrij

Queries#

Tel alle peuters select count(*) from peuter;
Tel alle actieve peutersselect count(*) from peuter where datumeerstebezoek<curdate() and datumlaatstebezoek > curdate();
Tel alle actieve peuters per vestiging:?
Overzicht overjarige peutersselect peuter.nummer,voornaam,achternaam,adres,telnr,geboortedatum,(select naam from groep where groep.nummer=peuter.groep1) as groep1,(select vestiging from groep where groep.nummer=peuter.groep1) as vestiging1,(select naam from groep where groep.nummer=peuter.groep2) as groep2,(select vestiging from groep where groep.nummer=peuter.groep2) as vestiging2,datumeerstebezoek as eerstebezoek,datumingeschreven as ingeschreven,datumlaatstebezoek as laatstebezoek,opmerking from peuter where datumlaatstebezoek>curdate() and datumeerstebezoek<curdate() order by geboortedatum,achternaam,voornaam;
Groep overzicht MA2 ZPWselect peuter.nummer,peuter.voornaam,peuter.achternaam,peuter.adres,peuter.postcode,peuter.woonplaats,peuter.telnr,peuter.geboortedatum from peuter where datumeerstebezoek<=curdate() and datumlaatstebezoek>curdate() and (peuter.groep1=(select nummer from groep where naam='MA2' and vestiging='ZevenPeggenweg') or peuter.groep2=(select nummer from groep where naam='MA2' and vestiging='ZevenPeggenweg')) order by geboortedatum;
Alle actieve peuters op de Hoeksteenselect peuter.nummer,peuter.voornaam,peuter.achternaam from peuter where datumeerstebezoek<=curdate() and datumlaatstebezoek>curdate() and (peuter.groep1 in (select nummer from groep where vestiging='Hoeksteen') or peuter.groep2 in (select nummer from groep where vestiging='Hoeksteen'));
aantal peuters per groep vanaf datum xxxselect groep.naam,groep.vestiging,count(*) as aantal,min(datumeerstebezoek) as 'eerste eerstebezoek', max(datumeerstebezoek) as 'laatste eerstebezoek' from groep,peuter where (peuter.groep1=groep.nummer or peuter.groep2=groep.nummer) and peuter.datumeerstebezoek<='2009-09-01' and peuter.datumlaatstebezoek>'2009-09-01' group by groep.vestiging,groep.naam;
alle overjarige peuters die niet in groepen zijn ingedeeldselect distinct peuterid,voornaam,achternaam from peuter where datumlaatstebezoek>curdate() and date_add(geboortedatum,INTERVAL 4 year) < curdate() and peuterid not in (select peuterid from peuter2groep) order by 1 desc;

Jaarlijkse rapportage#

De volgende SQL statements zijn handig voor het maken van de jaarlijkse rapportage:

oude krm systeem
# aantal peuters per vestiging voor elke maand:
select "2009-04",(select vestiging from groep where groep.nummer=peuter.groep1) as vestiging,count(*) as aantal from peuter where datumeerstebezoek<"2009-04-30" and datumlaatstebezoek>"2009-04-30" group by vestiging desc;
select "2009-05",(select vestiging from groep where groep.nummer=peuter.groep1) as vestiging,count(*) as aantal from peuter where datumeerstebezoek<"2009-05-31" and datumlaatstebezoek>"2009-05-31" group by vestiging desc;
select "2009-06",(select vestiging from groep where groep.nummer=peuter.groep1) as vestiging,count(*) as aantal from peuter where datumeerstebezoek<"2009-06-30" and datumlaatstebezoek>"2009-06-30" group by vestiging desc;
select "2009-07",(select vestiging from groep where groep.nummer=peuter.groep1) as vestiging,count(*) as aantal from peuter where datumeerstebezoek<"2009-07-31" and datumlaatstebezoek>"2009-07-31" group by vestiging desc;
select "2009-08",(select vestiging from groep where groep.nummer=peuter.groep1) as vestiging,count(*) as aantal from peuter where datumeerstebezoek<"2009-08-31" and datumlaatstebezoek>"2009-08-31" group by vestiging desc;
select "2009-09",(select vestiging from groep where groep.nummer=peuter.groep1) as vestiging,count(*) as aantal from peuter where datumeerstebezoek<"2009-09-30" and datumlaatstebezoek>"2009-09-30" group by vestiging desc;
select "2009-10",(select vestiging from groep where groep.nummer=peuter.groep1) as vestiging,count(*) as aantal from peuter where datumeerstebezoek<"2009-10-31" and datumlaatstebezoek>"2009-10-31" group by vestiging desc;
select "2009-11",(select vestiging from groep where groep.nummer=peuter.groep1) as vestiging,count(*) as aantal from peuter where datumeerstebezoek<"2009-11-30" and datumlaatstebezoek>"2009-11-30" group by vestiging desc;
select "2009-12",(select vestiging from groep where groep.nummer=peuter.groep1) as vestiging,count(*) as aantal from peuter where datumeerstebezoek<"2009-12-31" and datumlaatstebezoek>"2009-12-31" group by vestiging desc;
select "2010-01",(select vestiging from groep where groep.nummer=peuter.groep1) as vestiging,count(*) as aantal from peuter where datumeerstebezoek<"2010-01-31" and datumlaatstebezoek>"2010-01-31" group by vestiging desc;
select "2010-02",(select vestiging from groep where groep.nummer=peuter.groep1) as vestiging,count(*) as aantal from peuter where datumeerstebezoek<"2010-02-28" and datumlaatstebezoek>"2010-02-28" group by vestiging desc;
select "2010-03",(select vestiging from groep where groep.nummer=peuter.groep1) as vestiging,count(*) as aantal from peuter where datumeerstebezoek<"2010-03-31" and datumlaatstebezoek>"2010-03-31" group by vestiging desc;

# dubbelpeuters per vestiging:
select "2009-04",(select vestiging from groep where groep.nummer=peuter.groep1) as vestiging,count(*) as aantal from peuter where datumeerstebezoek<"2009-04-30" and datumlaatstebezoek>"2009-04-30" and  groep2 is not NULL group by vestiging desc;
select "2009-05",(select vestiging from groep where groep.nummer=peuter.groep1) as vestiging,count(*) as aantal from peuter where datumeerstebezoek<"2009-05-31" and datumlaatstebezoek>"2009-05-31" and  groep2 is not NULL group by vestiging desc;
select "2009-06",(select vestiging from groep where groep.nummer=peuter.groep1) as vestiging,count(*) as aantal from peuter where datumeerstebezoek<"2009-06-30" and datumlaatstebezoek>"2009-06-30" and  groep2 is not NULL group by vestiging desc;
select "2009-07",(select vestiging from groep where groep.nummer=peuter.groep1) as vestiging,count(*) as aantal from peuter where datumeerstebezoek<"2009-07-31" and datumlaatstebezoek>"2009-07-31" and  groep2 is not NULL group by vestiging desc;
select "2009-08",(select vestiging from groep where groep.nummer=peuter.groep1) as vestiging,count(*) as aantal from peuter where datumeerstebezoek<"2009-08-31" and datumlaatstebezoek>"2009-08-31" and  groep2 is not NULL group by vestiging desc;
select "2009-09",(select vestiging from groep where groep.nummer=peuter.groep1) as vestiging,count(*) as aantal from peuter where datumeerstebezoek<"2009-09-30" and datumlaatstebezoek>"2009-09-30" and  groep2 is not NULL group by vestiging desc;
select "2009-10",(select vestiging from groep where groep.nummer=peuter.groep1) as vestiging,count(*) as aantal from peuter where datumeerstebezoek<"2009-10-31" and datumlaatstebezoek>"2009-10-31" and  groep2 is not NULL group by vestiging desc;
select "2009-11",(select vestiging from groep where groep.nummer=peuter.groep1) as vestiging,count(*) as aantal from peuter where datumeerstebezoek<"2009-11-30" and datumlaatstebezoek>"2009-11-30" and  groep2 is not NULL group by vestiging desc;
select "2009-12",(select vestiging from groep where groep.nummer=peuter.groep1) as vestiging,count(*) as aantal from peuter where datumeerstebezoek<"2009-12-31" and datumlaatstebezoek>"2009-12-31" and  groep2 is not NULL group by vestiging desc;
select "2009-01",(select vestiging from groep where groep.nummer=peuter.groep1) as vestiging,count(*) as aantal from peuter where datumeerstebezoek<"2010-01-31" and datumlaatstebezoek>"2010-01-31" and  groep2 is not NULL group by vestiging desc;
select "2009-02",(select vestiging from groep where groep.nummer=peuter.groep1) as vestiging,count(*) as aantal from peuter where datumeerstebezoek<"2010-02-28" and datumlaatstebezoek>"2010-02-28" and  groep2 is not NULL group by vestiging desc;
select "2009-03",(select vestiging from groep where groep.nummer=peuter.groep1) as vestiging,count(*) as aantal from peuter where datumeerstebezoek<"2010-03-31" and datumlaatstebezoek>"2010-03-31" and  groep2 is not NULL group by vestiging desc;

# $2005_2006.$A$3:$B$16;$2005_2006.$E$3:$E$16;$2005_2006.$H$3:$H$16file:///home/metskem/mySQL/krm1.sql

nieuwe krm systeem

Aantal peuters

mysql> select "2010-10",count(*) from peuter p where datumeerstebezoek<'2010-10-01' and (datumlaatstebezoek is null OR datumlaatstebezoek >= '2010-11-01' );
+---------+----------+
| 2011-10 | count(*) |
+---------+----------+
| 2011-10 |      181 |
+---------+----------+
1 row in set (0.00 sec)

Aantal bezoeken

mysql> select "2010-10",count(*) as 'aantal bezoeken' from peuter p, peuter2groep p2g where datumeerstebezoek<'2010-10-01' and (datumlaatstebezoek is null OR datumlaatstebezoek >= '2010-11-01' ) and p.peuterid=p2g.peuterid;
+---------+-----------------+
| 2011-10 | aantal bezoeken |
+---------+-----------------+
| 2011-10 |             358 |
+---------+-----------------+
1 row in set (0.00 sec)