Oracle暫存資料表

來源:互聯網
上載者:User

標籤:

某些情況下, 需要 多個非常大的表關聯的情況下,  但是需要檢索的, 是少量的資料的時候.
可以先把 大表的資料, 檢索出那一小部分, 然後插入到 暫存資料表中, 最後再關聯處理.
例如:
某百貨公司的資料庫.
裡面有下面這2張 沒有分區的表
銷售表: 銷售日期, 銷售流水號, 銷售金額
銷售明細表: 銷售流水號, 銷售物品, 銷售數量

當上面的表裡面,包含幾年的資料以後。
假如你要查詢 昨天的銷售合計。 很簡單
SELECT * FROM 銷售表 WHERE 銷售日期 = 昨天。

但是當你要查詢 昨天的銷售的, 某種商品的 銷售情況的時候。 就要
SELECT
......
FROM
銷售表 JOIN 銷售明細表
ON (銷售表.銷售流水號 = 銷售明細表.銷售流水號)
WHERE
銷售表.銷售日期 = 昨天
AND 銷售明細表.銷售物品 =某物品

這種情況下,由於2個大表關聯,查詢時間非常的長。

可以通過暫存資料表。

INSERT INTO 暫存資料表1
SELECT * FROM 銷售表 WHERE 銷售日期 = 昨天

然後再
INSERT INTO 暫存資料表2
SELECT * FROM 銷售明細表 WHERE 銷售流水號 IN (SELECT 銷售流水號 FROM 暫存資料表1)

最後
SELECT
......
FROM
暫存資料表1 JOIN 暫存資料表2
ON (暫存資料表1.銷售流水號 = 暫存資料表2.銷售流水號)

這樣就是 2個小表關聯處理,查詢起來,速度快一些。

Oracle暫存資料表

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.