Comment Faire Des Operations Avec La Fonction Date Sqlite

Alors, tu te bats avec les dates dans SQLite? Franchement, qui ne l'a jamais fait? C'est un peu comme essayer de comprendre pourquoi les chats aiment autant les boîtes. Mystérieux, n'est-ce pas?
Mais pas de panique! On va démystifier tout ça ensemble. Prends ton café, installe-toi confortablement, et on y va! On va parler de comment faire des opérations avec la fonction date en SQLite. Parce que, avouons-le, manipuler des dates, c'est essentiel, que ce soit pour gérer des événements, des dates de péremption (oups!) ou n'importe quelle information temporelle.
Le format de date SQLite, kézako?
Avant de plonger dans les opérations, il faut comprendre un truc crucial: SQLite stocke les dates (et les heures) dans des formats... différents. Genre, il y a du TEXT (genre 'YYYY-MM-DD HH:MM:SS'), du REAL (nombre de jours depuis une date de référence), et même de l'INTEGER (timestamp Unix). C'est un peu bordélique, je sais.
Must Read
Mais bon, le format TEXT ('YYYY-MM-DD HH:MM:SS') est souvent le plus facile à utiliser et à comprendre. Donc, on va surtout se concentrer là-dessus. Promis?
La fonction date(): Ton amie pour la vie (ou presque)
La fonction date(), c'est un peu la baguette magique. Enfin, si ta baguette magique pouvait seulement manipuler des dates. Elle prend une date de base et peut la modifier. C'est comme donner une cure de jouvence à tes dates, mais en SQLite. Cool, non?

Par exemple:
SELECT date('now'); te donne la date d'aujourd'hui. Facile!

Mais ça devient plus intéressant avec les modifiers! Des modificateurs, quoi!
Les modifiers: Ajouter, soustraire... le bonheur!
Les modifiers, ce sont les petits détails qui te permettent d'ajouter ou de soustraire des jours, des mois, des années... Bref, de vraiment manipuler tes dates. Genre:

SELECT date('now', '+1 day'); Ça te donne la date de demain! Tu peux même faire '+10 days' pour dans dix jours, si tu veux déjà planifier tes prochaines vacances. (Ah, les vacances...)
SELECT date('2023-10-27', '+1 month'); Ça te donne la même date en novembre. Attention, si tu ajoutes un mois à '2023-01-31', tu auras '2023-03-03'! SQLite est malin, mais pas magicien (quoique...).

Tu peux aussi soustraire! Avec '-1 year', par exemple. Imagine les possibilités!
Quelques astuces bonus (parce que tu le vaux bien!)
- Tu peux chaîner les modifiers!
SELECT date('now', '+1 day', '-2 months');Donne-toi à cœur joie! - N'oublie pas les fonctions
strftime()pour formater ta date comme tu le souhaites. Genre, pour afficher juste l'année ou le mois.strftime('%Y', 'now');te donnera l'année actuelle.
Voilà! Tu es maintenant prêt à conquérir le monde... des dates en SQLite. N'hésite pas à expérimenter, à chercher d'autres fonctions (il y en a plein!), et surtout... à t'amuser! Parce que, franchement, si programmer n'est pas amusant, à quoi bon?
Et si tu bloques encore, reviens me voir! On prendra un autre café. 😉
