-3
A
回答
0
您可以創建一個函數來做到這一點:
CREATE OR REPLACE FUNCTION delete_inactive_records()
RETURNS TEXT AS
$BODY$
DECLARE VTABLES RECORD;
VRESULT TEXT;
VNUM_ROWS INTEGER;
BEGIN
VRESULT = '';
FOR VTABLES IN (
select distinct table_schema || '.' || table_name as table_name
from information_schema.tables t
where exists (
select 1
from information_schema.columns c
where c.table_catalog = t.table_catalog
and c.table_schema = c.table_schema
and c.table_name = t.table_name
and c.column_name = 'active'
and t.table_catalog in ("<your_table_catalog1>", "<your_table_catalog2>", "<etc>")
)
order by 1
)
LOOP
RAISE NOTICE 'DELETING FROM %...', VTABLES.TABLE_NAME;
EXECUTE ('DELETE FROM ' || VTABLES.TABLE_NAME || ' WHERE active = 0');
get diagnostics vNUM_ROWS = ROW_COUNT;
VRESULT = VRESULT || vNUM_ROWS || ' records were deleted from ' || VTABLES.TABLE_NAME || chr(13);
END LOOP;
return VRESULT;
end;
$BODY$
LANGUAGE plpgsql VOLATILE;
然後隨時撥打select delete_inactive_records();
您想「清理」您的表格!
1
你不能只是神奇地做到這一點,你需要編寫一個查詢來創建您的查詢。
事情是這樣的:
select distinct tablename from information_schema.columns where columnname = 'Active'
會給你的表的名單,然後只需添加到一個查詢,說
delete from <tablename> where active = 0
相關問題
- 1. Rails - 軟件刪除或存檔的活動和非活動數據
- 2. 刪除PHPBB3中的數千個非活動用戶
- 3. 刪除非活動產品自從
- 4. 中刪除非活動類項目
- 5. MongoDB刪除每個數據庫
- 6. 每行重複數據刪除SQL數據
- 7. 刪除/從活動
- 8. jQuery刪除每個觸發器上的當前活動類
- 9. SQL刪除大量數據
- 10. SQL刪除Extra列數據
- 11. 刪除數據庫SQL PHP
- 12. SQL數據庫刪除
- 13. 刪除SQL Server數據庫
- 14. 活動用戶和非活動用戶的一個SQL查詢?
- 15. 動態SQL CREATE USER每個數據庫
- 16. 如何自動刪除非活動OSSEC劑(批)
- 17. 通過mysql計算總數,活動和非活動數據
- 18. 從SQL Server 2005數據庫中刪除非法字符?
- 19. 每個函數都沒有執行刪除不活動的圖像
- 20. 刪除舊的活動一個
- 21. Yii刪除多個活動記錄
- 22. Javascript - 如何刪除所有活動的類,除非被點擊的元素已經有一個活動類
- 23. 數據庫表刪除後非常慢
- 24. 刪除插入的非唯一數據
- 25. 笨活動記錄 - 刪除不數組
- 26. 從多個活動源中刪除活動
- 27. 調用一個活動並從棧中刪除調用活動?
- 28. 完全刪除活動Android
- 29. 從backStack中刪除活動
- 30. 如何刪除活動?
您正在尋求一種解決方案,而無需顯示自己的努力甚至是有關您的模式的信息。 – Nicarus
這個問題對我來說聽起來很完美。我看不出爲什麼這麼多票。 – Christian