1
votes

PostgreSQL: erreur de syntaxe à ou près de "14" lors de la tentative d'exécution d'une requête de suppression

Première question ici!

J'ai donc un tableau avec une ligne comme celle-ci:

DELETE FROM customers WHERE timestamp < NOW() - INTERVAL 14 DAY;

Je voudrais lancer une requête qui supprime toutes les données de mon table datant de plus de 14 jours.

Voici ma requête:

created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP

Voici l'erreur: erreur de syntaxe à ou près de "14"

Tout le monde sait pourquoi cela ne fonctionne pas et / ou comment pourrais-je atteindre mon objectif ??

Merci beaucoup !!


0 commentaires

3 Réponses :


1
votes

La valeur de l'intervalle doit être indiquée:

DELETE FROM customers WHERE created_at < NOW() - INTERVAL '14 DAYS';

Voir le document


1 commentaires

@LucaTomarelli: Au lieu d'ajouter un "Merci!" commentaire, il est coutume ici de voter pour et / ou d'accepter une réponse si cela a aidé ...



0
votes
DELETE FROM customers WHERE created_at < NOW() - INTERVAL '14 DAY'; 

2 commentaires

Travaux! Merci beaucoup!


@LucaTomarelli: Au lieu d'ajouter un "Merci!" commentaire, il est de coutume ici de voter pour et / ou d'accepter une réponse si cela a aidé ...



0
votes

Autre variante des réponses existantes (peut-être plus facile à retenir):

DELETE FROM customers WHERE timestamp < NOW() - '14 days'::interval;


0 commentaires