Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1
    Utente di HTML.it L'avatar di lukezz
    Registrato dal
    Feb 2010
    Messaggi
    494

    [MYSQL] Chiusura ristorante tutto esaurito

    Buonasera,
    Ho una tabella che segna le prenotazioni del ristorante per orario e data cosi strutturata:

    book_table

    id | check_date | ora | prenotati

    Check_date è il giorno della prenotazione, ora ovviamente l'ora e prenotati i coperti prenotati.
    Mi chiedevo se fosse possibile senza l'uso di php, selezionare la data (check_date) se tutti gli orari di pranzo e cena sono occupati, mi spiego meglio, avendo a disposizione una data l'ora e il numero di coperti riesco a controllare se è possibile prenotare:

    codice:
    SELECT FROM book_table WHERE check_date = '2015-10-06' AND ora = '14:00' AND 50-prenotati >= 2
    In questo modo seleziono solo quelli disponibili.

    Avendo a disposizione gli orari di apertura del ristorante es. dalle 12:00 alle 14:00 e dalle 19:00 alle 23:00 vorrei selezionare tutte le date (check_date) piene sia a pranzo che a cena.

    Grazie anticipatamente.

  2. #2
    da qualche parte hai quanti coperti può gestire il ristorante?

  3. #3
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Direi 50 (vedi query)
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  4. #4
    Utente di HTML.it L'avatar di lukezz
    Registrato dal
    Feb 2010
    Messaggi
    494
    Si si ho 50 coperti.

  5. #5
    *qualunque* ristorante ha 50 coperti? me pare ssstrano

  6. #6
    Utente di HTML.it L'avatar di lukezz
    Registrato dal
    Feb 2010
    Messaggi
    494
    Si perché è solo per un ristorante.

  7. #7
    Utente di HTML.it L'avatar di nman
    Registrato dal
    Jan 2011
    residenza
    Milano
    Messaggi
    1,333
    Forse non ho capito niente ...
    Ma a parer mio oltre all'orario di prenotazione occorre anche un "periodo" di prenotazione
    Ingresso h 12.30
    Uscita h ?????

    oppure vuoi fissare a priori che una prenotazione occupa sempre 10 minuti ( dò dei numeri a fantasia )

    Poi se la apertura è per esempio dalle 12 alle 16 come ci comportiamo con una prenotazione alle 15.59 ????

    .

  8. #8
    Utente bannato
    Registrato dal
    Jul 2013
    Messaggi
    290
    da niubbo farei un approccio diverso (... letto su un libro per un esempio di aeroporto eheeheheh...)
    suddividerei il tempo poniamo in slot da un'ora.
    Metterei dei flag tipo 1 dove gli slot sono occupati.
    A quel punto puoi vedere l'occupazione dei tavoli sommando i flag
    (nell'esempio faceva una roba strana con due tabelle intermedie per poterli contare da SQL)
    In pratica qualcosa del tipo
    tavoli
    codicetavolo
    ...

    slot
    codicetavolo
    giorno
    numeroslot
    occupato

    in sostanza facendo la SUM di occupato raggruppato per codicetavolo (in un certo giorno) vedi quante ore son piene.
    Se il ristorante sta aperto poniamo 6 ore e il totale è 6 ... e così via.

    Probabilmente per un ristorante mezz'ora è meglio (la gente immagino prenoti alle 12:00, o alle 12:30, difficilmente alle 12:45)

    EDIT: non so se questo approccio va bene per un ristorante, nell'aeroporto i voli erano contingentati in termini temporali ben precisi (tipo ogni 15 minuti), mentre per un ristorante non credo si possa stabilire a priori, con esattezza, quanto durerà il pranzo (cosa fatta notare prima).
    Comunque da studentello questo è il mio contributo
    Ultima modifica di brancomat; 07-10-2015 a 11:34

  9. #9
    Utente di HTML.it L'avatar di lukezz
    Registrato dal
    Feb 2010
    Messaggi
    494
    Si può prenotare ogni mezz'ora, ma questo lo gestisco lato php, volevo sapere solo se era possibile, avendo a disposizione gli orari di apertura del ristorante es. dalle 12:00 alle 14:00 e dalle 19:00 alle 23:00, selezionare tutte le date (check_date) piene sia a pranzo che a cena. Non posso prenotare alle 15:59, ma ripeto questo va gestito lato php.

  10. #10
    non ti basta una COUNT() nel periodo selezionato?

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.