我需要查找模式中只包含空值的特定列的行計數,說'性別'。我有超過數百個模式,每個模式有超過10個表,所以我也需要根據模式名稱對它進行分組。我怎樣才能做到這一點?PostgreSQL:基於特定列和條件的模式中每個表格的行計數
回答
創建一個表來存儲表名和行數根據你的病情,
-- Table: test.row_count
-- DROP TABLE test.row_count;
CREATE TABLE test.row_count
(
table_name character varying,
count integer
)
WITH (
OIDS=FALSE
);
ALTER TABLE test.row_count
OWNER TO postgres;
下面的代碼將幫助您存儲的行數和上表的表名,
-- Function: retrive_row_count()
-- DROP FUNCTION retrive_row_count();
CREATE OR REPLACE FUNCTION retrive_row_count()
RETURNS integer AS
$BODY$
DECLARE
v_table text;
BEGIN
FOR v_table IN
SELECT table_schema||'.'||table_name
FROM information_schema.columns
WHERE column_name = 'gender'
LOOP
EXECUTE 'INSERT INTO test.row_count(table_name , count) SELECT '''||v_table || ''' , COUNT(*) FROM '||v_table || ' WHERE gender IS NULL' ;
END LOOP;
return 1;
END;
$BODY$
LANGUAGE plpgsql VOLATILE
COST 100;
ALTER FUNCTION retrive_row_count()
OWNER TO postgres;
嗨@Mohit謝謝你的回覆。我試過你的解決方案,它給了我成功的查詢,但我不知道我應該檢查結果。我跑了兩個查詢,你給了一個小小的調整。我將第一個查詢更改爲像這樣CREATE TABLE information_schema.row_count而不是'test',因爲測試給我錯誤。 –
嗨zt.az,「測試」是我的機器上的架構之一。你可以使用任何你想要的表名。例如使用public.row_count。確保您還在過程「retrive_row_count()」中更改了表名。 – shiv
好的,謝謝mohit會嘗試它,並在稍後提供反饋。感謝很多! –
- 1. 如何有條件地選擇基於每行的表和列?
- 2. 基於列標題的條件格式
- 3. 基於兩列的條件格式化
- 4. [R計數和列表每列的唯一行滿足條件
- 5. 基於Excel中每一行中確定的值的不確定行數的條件格式
- 6. 基於兩個數量列的條件格式(Excel)
- 7. Google表格 - 基於行模式和布爾條件平均某些單元格
- 8. 基於F#中條件的重新格式化列表
- 9. 如何基於Excel中的多個特定文本的條件格式
- 10. 計數行基於存在的條件
- 11. 條件格式化每行最低值的單元格不包括特定列
- 12. Django-tables2基於模型的表格 - 自定義列的計算
- 13. 基於包含特定文本的不同列的條件格式(Google Spreadsheet)
- 14. 基於兩列中的兩個條件複製列和行
- 15. Excel中的行和列格式化基於源表的查詢
- 16. 基於多個單元格和值的Excel條件格式化
- 17. Google表格:基於單元格值的多行中的條件格式
- 18. CSS:表格式 - 邊框,間距在特定的列和條件格式化
- 19. 有特定條件的計數列
- 20. 設計模式:基於規格生成每日和每週的任務
- 21. 對於每列,計數直到滿足條件的行數
- 22. 轉換特定列基於條件的大熊貓行
- 23. 有條件格式化,基於整行
- 24. 列表範圍和總計數基於條件
- 25. 條件格式基於其他表
- 26. 條件格式 - 基於一列的顏色比例整行
- 27. 基於多個表和列的SQL條件數據顯示
- 28. jQuery只顯示基於特定列的表格行rel屬性
- 29. Excel條件格式,基於2單元格計算的差異
- 30. 基於行條目計數?
提供一些樣本數據和期望輸出來幫助我們改變你的問題。 \t請閱讀[**如何提問**](http://stackoverflow.com/help/how-to-ask) \t \t這裏是[** START **]( http://spaghettidba.com/2015/04/24/how-to-post-at-sql-question-on-a-public-forum/)瞭解如何提高您的問題質量並獲得更好的答案。 –