sql >> Database >  >> RDS >> MariaDB

Een dag aftrekken van een datum in MariaDB

MariaDB biedt verschillende manieren om op datums te rekenen. Dit omvat het optellen of aftrekken van een dag (of meerdere dagen) van een bepaalde datum.

Hier is een voorbeeld van het aftrekken van een dag van een datum in MariaDB.

De SUBDATE() Functie

De SUBDATE() Met deze functie kunt u een bepaald aantal dagen van een datum aftrekken.

De eenvoudigste manier om dit te doen, is door de datum op te geven, gevolgd door het aantal dagen dat u wilt aftrekken.

Voorbeeld:

SELECT SUBDATE('2021-05-21', 1);

Resultaat:

+--------------------------+
| SUBDATE('2021-05-21', 1) |
+--------------------------+
| 2021-05-20               |
+--------------------------+

Meerdere dagen

Als je meer dan één dag moet aftrekken, gebruik dan dat getal in plaats van 1 .

SELECT SUBDATE('2021-05-01', 30);

Resultaat:

+---------------------------+
| SUBDATE('2021-05-01', 30) |
+---------------------------+
| 2021-04-01                |
+---------------------------+

In dit geval hebben we de datum geretourneerd, minus 30 dagen. Dit bracht ook de datum terug naar de vorige maand.

Een uitgebreidere syntaxis

De SUBDATE() functie heeft ook een meer uitgebreide syntaxis, waar u de eenheid kunt specificeren die van de datum moet worden afgetrokken. U kunt bijvoorbeeld dagen, weken, maanden, jaren, enz. specificeren.

SELECT SUBDATE('2021-05-01', INTERVAL 1 DAY);

Resultaat:

+---------------------------------------+
| SUBDATE('2021-05-01', INTERVAL 1 DAY) |
+---------------------------------------+
| 2021-04-30                            |
+---------------------------------------+

Merk op dat bij het aftrekken van meerdere dagen, de DAY zoekwoord blijft niet-meervoud:

SELECT SUBDATE('2021-05-01', INTERVAL 10 DAY);

Resultaat:

+----------------------------------------+
| SUBDATE('2021-05-01', INTERVAL 10 DAY) |
+----------------------------------------+
| 2021-04-21                             |
+----------------------------------------+

De aftrekkingsoperator (- )

Een andere manier om dagen van een datum af te trekken, is door de operator voor aftrekken te gebruiken (- ), ook wel de min-operator genoemd.

Voorbeeld:

SELECT '2021-05-01' - INTERVAL 90 DAY;

Resultaat:

+--------------------------------+
| '2021-05-01' - INTERVAL 90 DAY |
+--------------------------------+
| 2021-01-31                     |
+--------------------------------+

De toevoegingsoperator (+ )

U kunt ook de opteloperator gebruiken (+ ) samen met een negatief bedrag.

Voorbeeld:

SELECT '2021-05-01' + INTERVAL -90 DAY;

Resultaat:

+---------------------------------+
| '2021-05-01' + INTERVAL -90 DAY |
+---------------------------------+
| 2021-01-31                      |
+---------------------------------+

Andere manieren om dagen van datums af te trekken

Hier zijn enkele andere benaderingen die u zou kunnen gebruiken om een ​​of meer dagen van een datum af te trekken:

  • De DATE_SUB() functie (de SUBDATE() functie die in het bovenstaande voorbeeld wordt gebruikt, is een synoniem voor DATE_SUB() wanneer gebruikt met dezelfde syntaxis).
  • De DATE_ADD() functie (als u een negatief bedrag opgeeft, wordt dat bedrag van de datum afgetrokken).
  • De ADDDATE() functie (als u een negatief bedrag opgeeft, wordt dat bedrag van de datum afgetrokken).

  1. Kun je een if-statement toevoegen in ORDER BY?

  2. Hoe kan ik row_number in Oracle versnellen?

  3. De tekst-, ntext- en afbeeldingsgegevens> typen kunnen niet worden vergeleken of gesorteerd, behalve bij gebruik van IS NULL of LIKE> operator

  4. Een varchar-kolom upgraden naar enum-type in postgresql