我有一個2.37億行的MySQL表。我想處理所有這些行並用新值更新它們。如何高效處理MySQL表的所有行?
我有順序編號的,所以我可以只使用select
陳述了很多:
where id = '1'
where id = '2'
這是Sequentially run through a MYSQL table with 1,000,000 records?提到的方法。
但我想知道是否有更快的方式使用光標,可用於順序讀取大文件而無需將全套內容加載到內存中。我看到它的方式,光標將比運行數百萬條select
語句更快地將數據返回到可管理的塊中。
你看過DBI嗎? – Mat
你鏈接的方法是不相關的/如果你把它作爲許可證循環'where id ='1'',''2'',...你看錯了。 –
您希望更新數據的值是什麼?它們與數據庫中已有的東西有什麼關係?如果是這樣,請直接使用它們。如果沒有,請將您的新數據插入臨時表中,然後進行更新。 – eggyal