redis SETRANGE command
Translation results:
set
英[set] 美[sɛt]
vt. Set; place, arrange; put in a certain situation; place tableware
vi. Setting off; setting off; condensation
n.Gathering; a set; a set; a TV set
adj. Fixed; located in...; stubborn; arranged The
third person singular: sets plural: sets present participle: setting past tense: set past participle: set
range
英[reɪndʒ] Beauty [rendʒ]
n. Range; range; category; (mountains, houses, etc.) arrangement
vi. Search; change; extend; roam
vt. Arrangement ; (in a certain position or order); to classify; to wander around
adj. pasture, grazing area
Third person singular: ranges Plural: ranges Present participle: ranging Past tense: ranged past participle: ranged
redis SETRANGE commandsyntax
Function: Use the value parameter to overwrite the string value stored in the given key, starting from the offset offset. Keys that do not exist are treated as blank strings.
Syntax: SETRANGE key offset value
Description: The SETRANGE command will ensure that the string is long enough to set value at the specified offset Above, if the length of the original string stored in a given key is smaller than the offset (for example, the string is only 5 characters long, but the offset you set is 10), then the space between the original characters and the offset will be filled with zeros. Bytes (zerobytes, "\x00" ) to fill. Note that the maximum offset you can use is 2^29-1(536870911) because the size of a Redis string is limited to 512 megabytes. If you need to use more space than this, you can use multiple keys.
Available versions: >= 2.2.0
Time complexity: For small (small) strings, the amortized complexity O(1). (For information about what string is "small", please refer to the APPEND command) Otherwise it is O(M), M is the length of the value parameter.
Return: The length of the string after being modified by SETRANGE.
redis SETRANGE commandexample
# 对非空字符串进行 SETRANGE redis> SET greeting "hello world" OK redis> SETRANGE greeting 6 "Redis" (integer) 11 redis> GET greeting "hello Redis" # 对空字符串/不存在的 key 进行 SETRANGE redis> EXISTS empty_string (integer) 0 redis> SETRANGE empty_string 5 "Redis!" # 对不存在的 key 使用 SETRANGE (integer) 11 redis> GET empty_string # 空白处被"\x00"填充 "\x00\x00\x00\x00\x00Redis!"