我有兩個表FACT_SALE
和DIM_PRODUCT
二者均具有產品名稱通用,我想設置DIM_PRODUCT
的ID作爲外鍵。使用FACT_SALE
表的不同名稱值創建了DIM_PRODUCT
。加入和更新需要太長時間
UPDATE FACT_SALE FS
JOIN DIM_PRODUCT DP ON FS.PRODUCT_NAME = DP.NAME
SET FS.PRODUCT_KEY = DP.ID
我寫的這個查詢會永遠運行,也不會反映在數據庫中。 FACT_SALE table
中只有10萬條記錄(100 000)。但是如果我通過連接兩個表運行選擇查詢,它可以快速運行。
我能知道什麼是根本原因這個問題?
您的加盟條件是文本字段,我懷疑這個領域沒有被索引,增加索引的字段名稱可能會使方式更快捷,所以只是一個測試備份你的數據庫,然後添加索引字段FS.PRODUCT_NAME和DP.NAME然後測試您的更新。 –