est-il possible d'afficher la plage de dates dans MySQL Withouth Table? J'ai ce code mais cela manque.
SET @startDate = '2018-10-01'; SET @endDate = '2019-02-21'; select @startDate + INTERVAL seq.seq DAY AS sequential_day from ( SELECT A.N + 5*(B.N + 5*(C.N + 5*(D.N + 5*(E.N + 5*(F.N))))) AS seq FROM (SELECT 0 AS N UNION SELECT 1 UNION SELECT 2 UNION SELECT 3 UNION SELECT 4) AS A JOIN (SELECT 0 AS N UNION SELECT 1 UNION SELECT 2 UNION SELECT 3 UNION SELECT 4) AS B JOIN (SELECT 0 AS N UNION SELECT 1 UNION SELECT 2 UNION SELECT 3 UNION SELECT 4) AS C JOIN (SELECT 0 AS N UNION SELECT 1 UNION SELECT 2 UNION SELECT 3 UNION SELECT 4) AS D JOIN (SELECT 0 AS N UNION SELECT 1 UNION SELECT 2 UNION SELECT 3 UNION SELECT 4) AS E JOIN (SELECT 0 AS N UNION SELECT 1 UNION SELECT 2 UNION SELECT 3 UNION SELECT 4) AS F ) AS seq where seq.seq <= @endDate
3 Réponses :
J'ai une réponse ici:
Comment obtenir la liste des dates entre deux dates dans la requête de Select mysql p>
C'est exact. Vous avez besoin où code> pour filtrer réellement la requête
Vous pouvez utiliser la séquence MariaDB [test]> select seq FROM seq_1_to_4;
+-----+
| seq |
+-----+
| 1 |
| 2 |
| 3 |
| 4 |
+-----+
4 rows in set (0.042 sec)
MariaDB [test]> select CURDATE() + INTERVAL seq day FROM seq_1_to_31;
+--------------------------------+
| DATE(NOW()) + INTERVAL seq day |
+--------------------------------+
| 2019-02-23 |
| 2019-02-24 |
| 2019-02-25 |
| 2019-02-26 |
| 2019-02-27 |
| 2019-02-28 |
| 2019-03-01 |
| 2019-03-02 |
| 2019-03-03 |
| 2019-03-04 |
| 2019-03-05 |
| 2019-03-06 |
| 2019-03-07 |
| 2019-03-08 |
| 2019-03-09 |
| 2019-03-10 |
| 2019-03-11 |
| 2019-03-12 |
...
...
| 2019-03-22 |
| 2019-03-23 |
| 2019-03-24 |
| 2019-03-25 |
+--------------------------------+
31 rows in set (0.019 sec)
MariaDB [test]>
Utilisez Curdate () code> au lieu de
date (maintenant ()) code>.
Utilisez Votre requête actuelle affiche tous les entre code> pour la plage de valeurs. Comme lui-même dans votre requête, vous voulez des dates dans une certaine plage p>
<= code> Certain_value Il n'est pas tombé dans cette plage spécifique que vous souhaitez que les dates soient dans.
entre code> vous permet de donner une plage de valeurs. P>
Duplicaté possible de Comment obtenir Liste des dates entre deux dates dans MySQL Sélectionnez Query
@ T.LORE - J'ai ajouté un échantillon complet
N'oubliez pas que SQL n'est pas une panacée. Il y a des tâches pour lesquelles il est tout simplement inapproprié