SQL-Öffnungszeiten
In meinen shops Datenbank benötige ich die öffnungszeiten. Haben Sie eine Idee, wie ich das umsetzen kann, das in meiner dB?
Die öffnungszeiten sind von Montag bis Sonntag, jeden Tag kann 2 Fenster öffnen (ex 09:00-12:00, 16:00-19:00)
Du musst angemeldet sein, um einen Kommentar abzugeben.
erstellen einer anderen Tabelle, nennen es
schedules
, einen Fremdschlüssel hinzufügen, dieshops
Tabelle Primärschlüssel, eineDay of week
Feldtime_open
,time_closed
.Die Daten sollten in etwa so Aussehen:
Dies wird Ihnen die Gelegenheit geben, zu bauen jede Art von Schemata, mit, wie viele Fenster, wie Sie wollen, mit wie vielen Ausnahmen, die Sie brauchen. Es ist universal, nur die Tatsache, dass es erwartet, dass alle Wochen identisch sein. Keine Feiertage berücksichtigt, noch gerade/ungerade Woche von Zeitplänen, die jemand verwenden könnte.
Edit:
Mit Julien ' s Frage, über die Arbeitszeit der Nacht-Geschäft, es ist mir zu Ohren gekommen, dass die bisherige Lösung ist nicht die beste bu weit. Können Sie nicht haben eine bar geöffnet ab 20:00 Uhr, schließen um 06:00, und vergleichen, ob die aktuelle Zeit (02:45) ist in diesem Intervall, weil es wird nicht sein. Das ist, warum, es wäre sehr bequem, registrieren Sie nicht die Sperrstunde, sondern die gesamte Arbeitszeit, in der praktischen Maßeinheit (Minuten zum Beispiel).
Welche Art von Datenbank verwenden Sie? Wenn es mysql ist, setzen Sie in ein Feld vom Typ "Zeit". Dann können Sie geben Sie die Zeiten und grundlegende sql-Zeit-Manipulation auf Sie. Dieser ganze post übernimmt mysql.
Wenn es nur einen laden, und Sie wissen, es wird nie wachsen, nur eine Tabelle mit dem Namen Zeiten, in denen Sie halten die mal den store geöffnet ist. Dann, wenn Sie wollen, um zu sehen, wenn der Shop geöffnet ist, so überprüfen Sie die aktuelle Zeit gegen einen der Bereiche in der Datenbank.
Wenn es mehr als ein Geschäft, machen Sie eine Tabelle namens "times" und eine Tabelle namens "stores". In der Zeiten-Tabelle, Spalten, können Sie "öffnen" und "schließen" mit einer id namens "store_id". Die Läden Tisch benötigt eine id zu. Dann kann man nur sagen:
Diese geben Ihnen ALL die Zeit, die reicht in Verbindung mit den jeweiligen store.