Data en informatie: verzamelen, opslaan en bevragen
Hier draait het om de vraag wanneer data informatie worden, hoe je gegevens vastlegt en hoe je er gerichte vragen aan stelt. Je moet een tabel kunnen lezen, een query kunnen schrijven en een spreadsheet of database kunnen controleren op fouten.
Van data naar informatie
- Data zijn ruwe waarnemingen; informatie is data met betekenis en context. Gestructureerde data staan in een tabel of database, ongestructureerde data zijn bijvoorbeeld video of vrije tekst.
- Tekst codeer je met ASCII of Unicode (UTF-8 kan alle tekens), beeld als raster van pixels met resolutie en kleurdiepte (24 bits is ruim 16 miljoen kleuren), geluid met samplefrequentie en bitdiepte.
- Compressie zonder verlies (zip, png) maakt een bestand kleiner en houdt alles; compressie met verlies (jpeg, mp3) gooit informatie weg.
Opslaan in een database
- Een tabel gaat over één onderwerp; een record is een rij (één klant), een veld is een kolom met een datatype (tekst, getal, datum, ja/nee).
- De primaire sleutel is uniek en nooit leeg; een vreemde sleutel verwijst naar de primaire sleutel van een andere tabel en legt zo een relatie.
- Validatie bij invoer voorkomt fouten: verplicht veld, bereik, keuzelijst, invoermasker.
Bevragen
- SELECT veld FROM tabel WHERE conditie ORDER BY veld; gebruik AND en OR, waarbij AND voorgaat, en zet haakjes als je twijfelt. Tekst zet je tussen enkele aanhalingstekens, getallen niet.
- COUNT, SUM en AVG geven één samengevat antwoord; GROUP BY groepeert de resultaten.
- In een spreadsheet schuift A1 mee bij kopiëren, $A$1 blijft vast.
Uitgewerkt voorbeeld
Tabel klanten(klant_id, naam, woonplaats, tegoed). Gevraagd: namen van klanten uit Utrecht met een tegoed boven 50, gesorteerd op naam. SELECT naam FROM klanten WHERE woonplaats = 'Utrecht' AND tegoed > 50 ORDER BY naam; Redenering: beide voorwaarden moeten waar zijn, dus AND; tekst tussen aanhalingstekens; sorteren met ORDER BY.
Valkuilen
- Veld en record omdraaien.
- Een primaire sleutel leeg of dubbel invullen.
- OR gebruiken waar AND nodig is.