UPDATE `productData`.`productList`
SET `dateLastUpdated` = CURDATE(),
`totalReviews` = 100
WHERE `productList`.`name` = 'FirstchefproUltraSharpDualJuliennePeelerVegetablePeelerStainless';
該查詢需要2.93秒,隻影響單行。SQL中的單行UPDATE查詢需要3秒以上的時間
該表是〜75k行長。我沒有太多的SQL經驗,有沒有更好的方法來做到這一點?更新單個行不應該把這個長
我使用的是最新版本的SQL的Ubuntu的服務器
。如果您需要任何詳細信息,只問我會它添加到職位。
感謝
編輯:
我其實不知道,SQL和MySQL,不同的事情。
select語句
SELECT *
FROM `productList`
WHERE `productList`.`name` = 'FirstchefproUltraSharpDualJuliennePeelerVegetablePeelerStainless';
需要2.88秒,所以我想它的一個問題,我的指數。
編輯:
謝謝你們的幫助
當我嘗試在名稱上創建索引,這樣說:
ERROR 1170 (42000): BLOB/TEXT column 'name' used in key specification without a key length
編輯:
切換名稱爲varchar( 64)
現在它快得多
謝謝大家
哪些DBMS您使用的?這看起來像MySQL? –
MySQL <> SQL Server。選擇使用where子句需要多長時間? – Andrew
我不是一個MySQL大師,但我懷疑你沒有該查詢的覆蓋索引,因此它會導致表掃描。 –