0
我有3個表:如何擴大這個表,以支持修訂歷史
- 價目表(pricelist_id,名)
- 價格(price_id,pricelist_id,價格,備註)
- 門票(ticket_id,price_id,名稱,時間)
因此,主要原因兒子版本價格是因爲價格可以在將來改變,我想保留過去的統計價格的信息,我想門票有實際價格,而不是未來價格變化。
你能給我一些查詢的例子嗎?
我有3個表:如何擴大這個表,以支持修訂歷史
因此,主要原因兒子版本價格是因爲價格可以在將來改變,我想保留過去的統計價格的信息,我想門票有實際價格,而不是未來價格變化。
你能給我一些查詢的例子嗎?
我想一個可能的方法是製作兩個價格表而不是兩個:第一個將存儲一些通用的價格相關數據(如'note'和'pricelist_id'鏈接,因爲這些鏈接不會隨時間而改變),而第二個將存儲的實際價格(連同,大概,其激活的時間戳 - 但是這不是必要的):
prices (price_id, pricelist_id, note)
price_versions (price_ver_id, price_id, price, started_at, ended_at)
tickets (ticket_id, price_ver_id, name, issued_at)
正如你看到的,你是指price_versions
在tickets
得到具體價格。但您也可以輕鬆收集通用價格相關信息(通過加入prices
表格)。
該方法允許您構造一個附加約束,檢查issued_at
不在started_at
之前,而不是在ended_at
之後(它在相應的行中不爲空)。但我想這是一個補充,而不是要求。