0
我有一個名爲「採取」的布爾列,我將如何設置它,以便在每天午夜時每個列的條目設置爲false?文件如何運行?它只是一個獨立的PHP文件,每天晚上都有效嗎?每天午夜更新布爾postgresql?
我有一個名爲「採取」的布爾列,我將如何設置它,以便在每天午夜時每個列的條目設置爲false?文件如何運行?它只是一個獨立的PHP文件,每天晚上都有效嗎?每天午夜更新布爾postgresql?
處理該問題的典型方法是避免它。不要運行每日批量進行一般性更新,這是昂貴的,而不是必要的。
而是用日期替換布爾列。將其設置爲當前日期而不是將布爾值設置爲true,並將其設置爲null,而不是將布爾值設置爲false。
然後閱讀這樣的值,假設該列date_taken
:
SELECT coalesce((date_taken=current_date),false) AS taken, ... FROM tablename;
date_taken=current_date
,這意味着它已經被設置的今天,所以它產生真實的。date_taken<>current_date
,它已被設置但更早,所以它會產生錯誤,就像午夜更新批處理已經運行一樣。date_taken
爲空,則它從未被設置或設置爲空,並且coalesce()
產生錯誤。
更新查詢+ cron –
非常有幫助... – Ben