Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Wybierz wszystkie daty między dwiema datami bez użycia tabeli (wygeneruj listę dat)

Oto zapytanie:
To zapytanie daje prawidłowy wynik w obu bazach danych:MariaDB &MySQL .

SELECT ADDDATE('2012-02-10', INTERVAL @i:[email protected]+1 DAY) AS DAY
FROM (
SELECT a.a
FROM (SELECT 0 AS a UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3 UNION ALL SELECT 4 UNION ALL SELECT 5 UNION ALL SELECT 6 UNION ALL SELECT 7 UNION ALL SELECT 8 UNION ALL SELECT 9) AS a
CROSS JOIN (SELECT 0 AS a UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3 UNION ALL SELECT 4 UNION ALL SELECT 5 UNION ALL SELECT 6 UNION ALL SELECT 7 UNION ALL SELECT 8 UNION ALL SELECT 9) AS b
CROSS JOIN (SELECT 0 AS a UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3 UNION ALL SELECT 4 UNION ALL SELECT 5 UNION ALL SELECT 6 UNION ALL SELECT 7 UNION ALL SELECT 8 UNION ALL SELECT 9) AS c
) a
JOIN (SELECT @i := -1) r1
WHERE 
@i < DATEDIFF('2012-02-15', '2012-02-10')



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak pominąć kolumny w pliku CSV podczas importu do tabeli MySQL za pomocą funkcji LOAD DATA INFILE?

  2. Przełączanie z SQLite na MySQL za pomocą Flask SQLAlchemy

  3. Usuń duplikaty w dużej tabeli MySQL

  4. MySQL EXPLAIN 'typ' zmienia się z 'zakres' na 'ref' po zmianie daty w instrukcji where?

  5. Wstrzyknięcie SQL z filtrowaniem php