2015-02-24 26 views
0

如何查看在過去一天中添加到每個數據庫表中的新行數?查看每天添加到PostGRES表中的新行數

結果舉例:

table_name new_rows 
---------- ----------- 
users   32 
questions  150 
answers  98 
... 

我沒有看到存儲在Postgres的統計收集該信息的任何表:http://www.postgresql.org/docs/9.1/static/monitoring-stats.html

我能想到的唯一的解決辦法,就是創建一個數據庫表每天在午夜存儲每個表的row_count。

編輯:我需要這個與任何表一起工作,無論它是否有「created_at」或其他時間戳列。我希望在很多表格中看到增長率,沒有時間戳列&不能添加一個。

+0

在每個表中保留'CreatedAt'列,以便您可以查看何時插入行。 – 2015-02-24 00:18:03

+0

我希望它能夠在每張桌子上工作,即使它沒有時間戳列。我們很多連接表都沒有時間戳,我假設它會不必要地增加它們的大小。 – 2015-02-24 00:19:42

+0

您每夜計數的解決方案非常簡單,應該沒問題。或者,您可以爲要監視的每個表添加後插入觸發器,並在數據更改時更新統計信息。不過,這可能是一種矯枉過正。 – 2015-02-24 00:46:31

回答

0

最簡單的方法是在表中添加一個列,以便跟蹤插入/更新日期。

然後檢索行,你可以在最後一天做一個簡單的select

從我的知識,我也做了一些研究,以確保沒有實習生的功能,讓你做到這一點,而無需創建一個領域。

+0

感謝讓 - 弗朗索瓦,我會牢記這一點:)目前我正在尋找一種解決方案,可以在不向表中添加字段的情況下工作。 – 2015-02-24 00:25:36

+0

不客氣。但是,我高度懷疑有人會在不添加字段的情況下提供解決方案。不過,我很樂意閱讀它。 – 2015-02-24 00:32:10