Maison > base de données > tutoriel mysql > Comment générer une plage de dates dans MySQL à l'aide d'une requête SELECT ?

Comment générer une plage de dates dans MySQL à l'aide d'une requête SELECT ?

Susan Sarandon
Libérer: 2025-01-19 01:26:08
original
582 Les gens l'ont consulté

How to Generate a Date Range in MySQL Using a SELECT Query?

Utilisez la requête MySQL SELECT pour générer une plage de dates

De nombreuses applications doivent obtenir une série de dates dans une plage de dates spécifiée. La requête MySQL SELECT accomplit cela.

Construction de requêtes

Pour générer une liste de dates entre deux dates données, vous pouvez utiliser la requête suivante :

<code class="language-sql">SELECT * FROM
(SELECT ADDDATE('1970-01-01', t4.i * 10000 + t3.i * 1000 + t2.i * 100 + t1.i * 10 + t0.i) AS selected_date FROM
 (SELECT 0 i UNION SELECT 1 UNION SELECT 2 UNION SELECT 3 UNION SELECT 4 UNION SELECT 5 UNION SELECT 6 UNION SELECT 7 UNION SELECT 8 UNION SELECT 9) t0,
 (SELECT 0 i UNION SELECT 1 UNION SELECT 2 UNION SELECT 3 UNION SELECT 4 UNION SELECT 5 UNION SELECT 6 UNION SELECT 7 UNION SELECT 8 UNION SELECT 9) t1,
 (SELECT 0 i UNION SELECT 1 UNION SELECT 2 UNION SELECT 3 UNION SELECT 4 UNION SELECT 5 UNION SELECT 6 UNION SELECT 7 UNION SELECT 8 UNION SELECT 9) t2,
 (SELECT 0 i UNION SELECT 1 UNION SELECT 2 UNION SELECT 3 UNION SELECT 4 UNION SELECT 5 UNION SELECT 6 UNION SELECT 7 UNION SELECT 8 UNION SELECT 9) t3,
 (SELECT 0 i UNION SELECT 1 UNION SELECT 2 UNION SELECT 3 UNION SELECT 4 UNION SELECT 5 UNION SELECT 6 UNION SELECT 7 UNION SELECT 8 UNION SELECT 9) t4) v
WHERE selected_date BETWEEN '2012-02-10' AND '2012-02-15';</code>
Copier après la connexion

Cette requête génère une plage de dates allant du « 2012-02-10 » au « 2012-02-15 », chaque date étant affichée sur une seule ligne dans l'ensemble de résultats.

Description

Une instruction SELECT imbriquée dans la requête principale est utilisée pour construire une liste de dates. Chaque instruction SELECT génère une séquence de nombres à un chiffre de 0 à 9. Ces séquences sont ensuite combinées à l'aide de l'opérateur " " pour former une chaîne de date complète. La fonction "ADDDATE" est utilisée pour ajouter ces numéros au "1970-01-01" afin de générer la plage de dates souhaitée.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal