Profilo di DouglasClements

Nome DouglasClements
Indirizzo email n/a
Messaggi1
  • Re: Confrontare date con Sqlite
    Forum >> Programmazione Python >> Database
    Certo sai giò che sqlite ha uno scarso supporto per i dati temporali ... però non è difficile trattare direttamente stringhe con dati in formato "dd/mm/aaaa", basta utilizzare la funzione sqlite substr e creare una stringa ordinata per anno-mese-giorno ... p.e, ho creato una semplicissima tavola con date di eventi alla rinfusa, per poi ordinarli e selezionare una "data limite" utilizzando tali considerazioni, vedi sotto una sessione in shell sqlite :

    sqlite> .schema eventi
    CREATE TABLE eventi (
    data TEXT,
    evento TEXT);
    sqlite> select * from eventi;
    25/06/1876|battaglia del Little Bighorn
    06/04/1453|inizio assedio Costantinopoli
    03/08/1492|Cristoforo Colombo parte sa Palos
    06/06/1944|Sbarco in Normandia
    sqlite> SELECT * FROM eventi
       ...> ORDER BY (substr(data, 7, 4) || '-' || substr(data, 4, 2) || '-' || substr(data, 1, 2));
    06/04/1453|inizio assedio Costantinopoli
    03/08/1492|Cristoforo Colombo parte sa Palos
    25/06/1876|battaglia del Little Bighorn
    06/06/1944|Sbarco in Normandia
    sqlite> SELECT * FROM eventi
       ...> WHERE (substr(data, 7, 4) || '-' || substr(data, 4, 2) || '-' || substr(data, 1, 2)) > '1500-01-01';
    25/06/1876|battaglia del Little Bighorn
    06/06/1944|Sbarco in Normandia
    sqlite>
    google

    Venendo al Tuo "ottimizzare", non ne ho idea, non avendo presenti tanto i dati quanto il contesto ... certo che sarebbe bene registrare i dati temporali direttamente secondo le modalità previste in sqlite, semplificherebbe le query.


    CIAO
    Ho fatto cónulenza e mi sono comportato male