Mysql

與使用有限數量的表和較少的 JOINS 相比,使用多個表和 JOINS 如何影響性能?

  • November 18, 2011

我想設計一個關於時間表的數據庫模式。

、我可以使用同一張表中的所有欄位,例如:

id | shop_id | mo (varchar) | tu (varchar) | we | th | fr | sa | su 
1 | 1       | 08:00-12:00  | ...

**二、**或者我可以使用更多表用於schedule結構:

id | shop_id | mo_id | tu_id | we_id | th_id | fr_id | sa_id | su_id

然後每天一張桌子……例如:monday結構:

id | form_time | to_time 

**三、**或者我可以使用一張表用於schedule結構:

id | shop_id | weekday_id

然後只有一張表用於weekdays結構:

id | day | form_time | to_time 

這3個結構你覺得哪個結構性能更好?

您顯然熟悉數據規範化和連接表。不要忽略您的問題,但我會更多地關注以最簡單的方式擷取資訊並且不對您的應用程序施加撤消約束的可靠設計。我想你會發現表演本身就可以了。我想知道這有什麼問題:

TABLE events
 id | shop_id | title | desc | from (DATETIME) | to (DATETIME)

要確定一天的日程安排,您必須對這些 DATETIME 欄位進行一些工作,以確定它們是否在星期一、星期二等。但這很容易,現在有各種其他方法可以分割這些數據。如果這很重要,您甚至可以創建 7 個視圖(S、M、T、W、T、F、S),只返回一周中每一天的事件。

引用自:https://dba.stackexchange.com/questions/8020