---
title: "Snurrig med < och <= vilket som är rätt?"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/192664-snurrig-med-och-vilket-som-är-rätt"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "xtreme"
published: "2015-04-22T11:35:47.000Z"
updated: "2015-04-22T12:02:49.000Z"
replies: 3
views: 871
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/databaser-sql/192664-snurrig-med-och-vilket-som-är-rätt"
---

# Snurrig med < och <= vilket som är rätt?

## #1 — xtreme, 2015-04-22T11:35Z

Har ett enkelt problem men snurrar bara till det av någon anledning, får inte till det om det ska vara \<= eller bara \<

Regler

- Värdet lades till 1 september, skapelsedatumet var den 1 september.
- Den 21 september, 20 dagar **efter** värdet skapades, tar denna regel effekt och tar bort värdet automatiskt.

```
WHERE r.created_timestamp < (NOW() - INTERVAL 20 DAY)
```

eller

```
WHERE r.created_timestamp <= (NOW() - INTERVAL 20 DAY)
```

Vad är det rätta om jag vill radera värdet 20 dagar efter värdets skapelsedatum?

Permalänk: https://www.webforum.nu/p/192664

## #2 — prplxr, 2015-04-22T11:49Z

Räknade lite på det. 1 september - 20 dagar = 12 augusti. Vill du den 1 september ta bort det som skapats den 12 augusti (eller tidigare) så ska du använda \<=, vill du ta bort det som skapats den 11 augusti (eller tidigare) så ska du använda \<.

Utöver det bör du ha i åtanke att även klockslag beaktas med den frågan du kör nu. Vill du bara köra på datum får du använda DATE(r.created_timestamp) och DATE(NOW() - INTERVAL 20 DAY).

(Det sista har jag inte testat, men det bör vara så)

Permalänk: https://www.webforum.nu/p/2318508

## #3 — xtreme, 2015-04-22T11:54Z

> **[prplxr skrev:](https://www.webforum.nu/p/1573008)**
>
> Räknade lite på det. 1 september - 20 dagar = 12 augusti. Vill du den 1 september ta bort det som skapats den 12 augusti (eller tidigare) så ska du använda \<=, vill du ta bort det som skapats den 11 augusti (eller tidigare) så ska du använda \<.
> 
> Utöver det bör du ha i åtanke att även klockslag beaktas med den frågan du kör nu. Vill du bara köra på datum får du använda DATE(r.created_timestamp) och DATE(NOW() - INTERVAL 20 DAY).
> 
> (Det sista har jag inte testat, men det bör vara så)

Även om du nog svarade på min fråga tror jag du missförstod mig. Den 21 september vill jag radera det som skapdes 1 september.

Permalänk: https://www.webforum.nu/p/2318509

## #4 — prplxr, 2015-04-22T12:02Z

Ursäkta, det blev lite rörigt, men matematiken är densamma. Vill du den 21 september radera den som skapats 1 september ska du använda \<=, eftersom 21-20=1 (dvs, datumen blir samma).

Permalänk: https://www.webforum.nu/p/2318510

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/192664-snurrig-med-och-vilket-som-är-rätt
