我有一個有幾百萬行的單個表,客戶端同時訪問這個表,每個客戶需要得到20個唯一的行,然後需要放在最後一行。爲多個客戶端同時提供獨特的結果
我的設置是:
表結構:
id | last_access | reserved_id | [Data columns]
id + last_access is indexed
對於選擇我用下面的20個獨特的行:
UPDATE "table" SET "reserved" = 'client-id_timestamp' WHERE "reserved" = ''ORDER BY "last_access" ASC LIMIT 20
此更新查詢是相當糟糕的表現明智的,這是我爲什麼要問:
對我的具體要求有更好的解決方案嗎?另一個表結構也許?
在列名稱周圍使用backtics而非引號 - 引號用於字符串。 –
這只是一個例子,但無論如何指出。 – Jeppe