Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    MSQL ordinare date da timestamp

    ciao a tutti!

    ho una query che legge una lista di appuntamenti dalle 14 alle 19 e me li ordina per 'ore:minuti':


    SELECT * FROM `appuntamenti` WHERE extract(hour from `data_timestamp`) >= 14 AND extract(hour from `when_frm`)<= 19 ORDER BY extract(HOUR_MINUTE from `data_timestamp`) ASC

    e fin qui tutto apposto


    Ma la query seguente mi da problemi i risultati che dovrebbero andare dalle 20 alle 5 del mattino
    ma ottengo ...l'ordine chiaramente parte dal più basso e cioè mezzanotte 0:00, 1:00,.......,5:00,20:00,21:00,....,23:59


    SELECT * FROM `appuntamenti` WHERE extract(hour from `data_timestamp`) >= 20 OR extract(hour from `when_frm`)<= 5 ORDER BY extract(HOUR_MINUTE from `data_timestamp`) ASC


    Io vorrei trovare un modo per fare una query che ordini dalle 20:00 alle 5:00 del mattino..mi spiego???
    Ovviamente la soluzione deve stare nella query...a causa della necessità di chiedere un paginazione con limit...

    ragazzi spero di essere stato chiaro..!!!!!!

  2. #2
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    codice:
    select *,extract(hour from data_timestamp) as ora,
    case
    when extract(hour from data_timestamp) > 20 then 1
    else 2
    end
    as fascia
    from appuntamenti
    where extract(hour from data_timestamp) > 20 or extract(hour from data_timestamp) < 5
    order by fascia,ora

  3. #3
    nicola grazie della risposta,

    non riesco a capire il "case" usato in questa query riesci a spiegare in dettaglio quello che accade?
    c'è anche qualche errore? per esempio "end" deve essere "end case"?? :master:

    grazie in anticipo!

  4. #4
    OK
    sono riuscito a farla partire.. e funziona! grazie

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.