# Hoe gebruik je de DELETE-opdracht in PostgreSQL

Met PostgreSQL `DELETE` kunt u gegevens uit een tabel verwijderen. Het commando kan worden verfijnd met behulp van voorwaarden, waardoor u kunt aangeven welke specifieke rijen moeten worden verwijderd. Aangezien het verwijderen van gegevens in PostgreSQL onomkeerbaar is, is het belangrijk om het commando zorgvuldig te gebruiken.

## Wat is PostgreSQL `DELETE`?

Het commando `DELETE` in PostgreSQL wordt gebruikt om **rijen uit een tabel te verwijderen**. Met behulp van de `WHERE` kunt u bepaalde rijen selecteren om te verwijderen. Zonder de `WHERE` worden alle gegevens in de opgegeven tabel **definitief** verwijderd. Aangezien gegevens definitief worden verwijderd, dient u voorzichtig te zijn bij het gebruik van dit commando.

## Wat is de syntaxis voor PostgreSQL `DELETE`?

De basissyntaxis van PostgreSQL `DELETE` is als volgt:

```postgresql
DELETE FROM table_name
WHERE [condition];
```

Met het `DELETE FROM` start u het verwijderen van rijen in de door u opgegeven tabel. Met de `WHERE` kunt u specifieke rijen aangeven waarvan de gegevens moeten worden verwijderd. Om meerdere voorwaarden toe te passen, kunt u `AND` of `OR` gebruiken.

Opmerking Zorg ervoor dat u een actuele back-up van de database hebt voordat u gegevens verwijdert. U kunt de verwijderingsbewerking ook binnen een transactie uitvoeren. Dit helpt onbedoeld gegevensverlies te voorkomen als het commando niet correct wordt uitgevoerd.

## Hoe gegevens uit een tabel verwijderen

Om een beter beeld te krijgen van hoe `DELETE` in PostgreSQL werkt, bekijken we een praktisch voorbeeld. Eerst maken we met het commando [CREATE TABLE](https://www.ionos.com/nl-be/digitalguide/server/configuratie/postgresql-create-table/) een tabel aan met de naam ‘customer\_list’. Vervolgens vullen we deze aan met [INSERT INTO](https://www.ionos.com/nl-be/digitalguide/server/configuratie/postgresql-insert-into/). De tabel heeft drie kolommen (`id`, `name` en `city`) en bevat vier records:

```postgresql
|id|name|city|
|-|-|-|
|1|Haines|Sheffield|
|2|Sullivan|Glasgow|
|3|Smith|Newcastle|
|4|Haines|Belfast|
```

Als je PostgreSQL `DELETE` zonder voorwaarde gebruikt, worden alle gegevens in de tabel verwijderd. De tabelstructuur zelf wordt echter niet verwijderd. Hieronder zie je hoe het commando eruitziet:

```postgresql
DELETE FROM customer_list;
```

## Hoe verwijder je een rij in PostgreSQL

Vaak moet je **een afzonderlijke rij** verwijderen. Dit kun je doen door een `WHERE` toe te voegen. Stel bijvoorbeeld dat we Sullivan (id-nummer `2`) uit onze lijst willen verwijderen. Daarvoor kunnen we de volgende code gebruiken:

```postgresql
DELETE FROM customer_list
WHERE id = 2;
```

### Hoe een rij op basis van meerdere voorwaarden te selecteren

Als u met grote tabellen werkt, kunt u te maken krijgen met dubbele vermeldingen. Om ervoor te zorgen dat er slechts één rij wordt verwijderd, kunt u **meerdere voorwaarden** gebruiken. In de bovenstaande tabel staan twee klanten met de naam Haines, maar we willen alleen de tweede vermelding verwijderen. Hiervoor kunnen we twee voorwaarden combineren:

```postgresql
DELETE FROM customer_list
WHERE name = 'Haines'
AND id >= 3;
```

Dit commando verwijdert alle rijen met de naam Haines waarvan het veld `id` groter is dan of gelijk is aan `3`. Aangezien de eerste rij met de naam Haines een waarde `id` heeft die kleiner is dan `3`, blijft deze in de database staan nadat het verwijderingscommando is uitgevoerd.


This is a markdown version of: [https://www.ionos.com/nl-be/digitalguide/server/configuratie/postgresql-delete/](https://www.ionos.com/nl-be/digitalguide/server/configuratie/postgresql-delete/) for AI/LLM consumption.