Sono interessato a vedere suggerimenti per una progettazione di database per quanto riguarda gli orari di lavoro.Progettazione database: il modo migliore per mostrare le ore disponibili?
Sarebbe del tutto simile a quello che Facebook ha - alt text http://uploader.ws/upload/200903/widget.png
Ho un elenco delle imprese, e vorrei che gli utenti siano in grado di ingresso più insiemi di ore disponibili per tale attività. ad es.
lunedì: aperto 9-5; Martedì: aperto 9-12; 1-5; ecc. Non vorrei essere limitato a due serie di ore al giorno. Idealmente, N serie di ore al giorno. Se questo non è pratico, non più di 4 ... non meno di 2.
Sono interessato alle soluzioni "migliori" (teoriche) e più pratiche.
Il DBMS che sto utilizzando è MySQL.
Questo è simile a quello che stavo per postare. Tuttavia, non prenderei in considerazione l'aggiunta di un problema ... Vorrei fare un'unica query separata per selezionare tutti gli intervalli di ore applicabili per un'azienda e lasciare che il codice dell'app gestisca la formattazione. Puoi sempre memorizzare anche l'output nella cache. – zombat
Qual è il vantaggio della colonna open_hour_range.id? –
La colonna open_hour_range.id fornisce un modo per identificare in modo univoco un particolare open_hour_range per l'aggiornamento/la cancellazione. Questa potrebbe essere una cattiva abitudine, immagino che potresti rendere il set completo di colonne del tavolo come chiave primaria. –