SQLite: Pobierz wszystkie daty między datami

Potrzebuję pomocy w związku z problemem SQL (w szczególności: SQLite). Mam stolik „wakacje”

CREATE TABLE vacation(
    name TEXT,
    to_date TEXT, 
    from_date TEXT
);

gdzie przechowuję datę (RRRR-MM-DD), gdy ktoś wyjeżdża na wakacje i wraca ponownie. Teraz chciałbym uzyskać charakterystyczną listę wszystkich dat, w których ktoś jest na wakacjach. Załóżmy, że mój stół wygląda tak:

+------------+-------------+------------+
|    name    |   to_date   |  from_date |
+------------+-------------+------------+
|    Peter   | 2013-07-01  | 2013-07-10 |
|    Paul    | 2013-06-30  | 2013-07-05 |
|    Simon   | 2013-05-10  | 2013-05-15 |
+------------+-------------+------------+

Wynik zapytania powinien wyglądać następująco:

+------------------------------+
| dates_people_are_on_vacation |
+------------------------------+
|          2013-05-10          |
|          2013-05-11          |
|          2013-05-13          |
|          2013-05-14          |
|          2013-05-15          |
|          2013-06-30          |
|          2013-07-01          |
|          2013-07-02          |
|          2013-07-03          |
|          2013-07-04          |
|          2013-07-05          |
|          2013-07-06          |
|          2013-07-07          |
|          2013-07-08          |
|          2013-07-09          |
|          2013-07-10          |
+------------------------------+

Myślałem o użyciu daty - tabeli „all_dates”

CREATE TABLES all_dates(
    date_entry TEXT
);

który obejmuje 20-letni okres czasu (2010-01-01 do 2030-01-01) i następujące zapytanie:

SELECT date_entry FROM all_dates WHERE date_entry BETWEEN (SELECT from_date FROM vacation) AND (SELECT to_date FROM vacation); 

Jeśli jednak zastosuję to zapytanie w powyższym zbiorze danych, otrzymam tylko ułamek pożądanego wyniku:

+------------------------------+
| dates_people_are_on_vacation |
+------------------------------+
|          2013-07-01          |
|          2013-07-02          |
|          2013-07-03          |
|          2013-07-04          |
|          2013-07-05          |
|          2013-07-06          |
|          2013-07-07          |
|          2013-07-08          |
|          2013-07-09          |
|          2013-07-10          |
+------------------------------+

Czy można to zrobić za pomocą SQLite? Albo lepiej, jeśli po prostu zwrócę kolumnę „to_date” i „from_date” i wypełnię luki między tymi datami w mojej aplikacji Pythona?

Każda pomoc jest doceniana!

questionAnswers(1)

yourAnswerToTheQuestion