0
我們有數據爲系統遵循PostgreSQL的 - 對彙總數據最好的方法
用戶數據 體驗 教育 求職
該數據將跨應用程序使用,很少有邏輯也重視這些數據。 爲了確保這些數據在整個應用程序中保持一致,我認爲可以創建View並獲取這些數據的計數,然後在不同的地方使用此視圖。
現在的問題是,作爲詳細信息表沒有與對方的關係,我應該如何創建視圖
- 爲每個表的不同視圖,然後通過
- 使用組創建一個視圖,寫子查詢以獲取這些數據
從性能角度來看,哪一個是最好的方法?
例如,
SELECT
UserId,
COUNT(*) AS ExperienceCount,
0 AS EducationCount
FROM User
INNER JOIN Experience ON user_id = User_Id
GROUP BY
UserId
UNION ALL
SELECT
UserId,
0,
COUNT(*)
FROM User
INNER JOIN Education ON user_id = user_id
GROUP BY
UserId
然後按此組合得到每個用戶一行中所有這些數據的摘要。寫出您指定很可能是查詢
如果您想了解兩種不同方法的性能,請嘗試使用它們處理系統上的數據。如果您有特定的問題,至少應該在問題中包含這些查詢。 –
感謝您的快速響應,實際上截至目前我還沒有足夠的數據來測試這一點,所以只是想檢查一下。好的,我會在這裏包含相同的查詢 –