聯表取數據

       最近遇到一個數據庫問題,有6張日誌表,分別對應登錄、查詢、刪除等操做,表字段徹底相同。如今須要從這6張表中取出一些數據,分頁展示在頁面上。原本用union all就能解決,但據說它的性能很很差(具體緣由不清楚),由於咱們採用內存分頁(每次只從數據庫取出幾條數據),因此分別從每張表取出數據放到list,再從list中取,這種方法不行,由於日誌表的數據不少,這種方式違背的內存分頁的理念。 數據庫

        我又想了個辦法,就是建一個臨時表,分別從6張表中取出想要的數據,放入臨時表中,而後從臨時表中分頁獲取。這種方案和上面的list方法相似,但整個過程都是在數據庫內部完成,避免了大數據量的傳輸,速度應該可以快不少,並且也可以很好的解決排序問題。但有個問題,就是這張臨時表何時刪除呢,不可能頁面展示完了就刪除,由於還要分頁,只有用戶離開本頁面才能夠,可我不知道怎麼把我這個點。 性能

        關於內存處理和數據庫優化我都不太懂,不知道該怎麼辦。 大數據

相關文章
相關標籤/搜索