Query

vraag voor databank

Met een query (Engels voor vraagstelling) wordt in de informatica een opdracht bedoeld die aan een database wordt gegeven om een bepaalde actie uit te voeren, die ook potentieel gegevens teruggeeft. De term wordt ook gebruikt voor een zoekstring die in een zoekmachine wordt ingevoerd. Dit artikel gaat over de eerste betekenis.

Een voorbeeld van een query kan zijn uit een database met namen en adressen: maak een lijst van alle personen uit de database die in Amsterdam wonen. Als de database uitgebreider is en bijvoorbeeld ook de prijzen van de woonhuizen en telefoonnummers bevat kan de query uitgebreid worden met de vraag: Maak een lijst met namen en telefoonnummers van mensen die wonen in een huis dat tussen de 100.000 en 200.000 euro heeft gekost. In SQL zou deze query er bijvoorbeeld als volgt kunnen uitzien:

 SELECT b.voornaam, b.familienaam, b.telefoonnummer
 FROM bewonerstabel b, huizentabel h
 WHERE b.voornaam = h.eigenaarsvoornaam
   AND b.familienaam = h.eigenaarsfamilienaam
   AND h.kostprijs BETWEEN 100000 AND 200000;


Een query wordt niet gesteld als een vraag, maar er wordt een speciale taal voor gebruikt. Voorbeelden van een querytaal zijn SQL en relationele algebra. In sommige databasepakketten en software, zoals Microsoft Access en phpMyAdmin, kan een query gemaakt worden met een soort invulformulier.

Een query kan ook gemaakt worden in een geografisch informatiesysteem, bijvoorbeeld laat alle gebieden zien in Nederland en België met een ligging onder zeeniveau.

Hoewel een query een vraag is en er altijd een antwoord van de database terugkomt, zijn er naast de hierboven genoemde voorbeelden (die allen 'lees'-vragen zijn), nog drie andere opdrachten die aan de database gegeven kunnen worden. Deze vier vragen worden ook wel CRUD-operaties genoemd. Deze letters staan voor:

  • Create (of insert): Toevoegen van nieuwe records aan de database
  • Read (of select): Opvragen van gegevens
  • Update: Wijzigen van gegevens
  • Delete: Verwijderen van gegevens

Zie ook bewerken