0
我用redis列表結構來存儲數據,但現在我想更改列表類型來設置。任何命令爲此?我可以更改redis數據結構列表來設置
我用redis列表結構來存儲數據,但現在我想更改列表類型來設置。任何命令爲此?我可以更改redis數據結構列表來設置
沒有內置的方法來做到這一點。您需要手動從列表中獲取項目並插入到集合中。如果你的列表很小,你可以使用下面Lua中:
repeat
local item = redis.call('lpop', KEYS[1])
if (item) then redis.call('sadd', KEYS[2], item) end
until not item
然而,如果你的列表是非常大的,該腳本將阻止Redis的很長一段時間。你必須逐步從列表中移動項目的設置:
LRANGE
獲得從列表中的某些項目(小批量)SADD
插入這些項目設置LTRIM
除去從這些項目列表