이번 튜토리얼에서는 Redis 데이터 저장소에 키(key)로 저장된 정렬된 집합(sorted set) 값에서 특정 요소의 점수(score)를 증가시키는 방법을 알아보겠습니다. 이를 위해 redis-cli에서 ZINCRBY 명령어를 사용합니다.
ZINCRBY 명령어란?
ZINCRBY 명령어는 키에 저장된 정렬된 집합 값 안에서 특정 요소의 점수를 지정한 값(increment)만큼 증가시키는 데 사용됩니다. 이 명령어의 동작 방식은 다음과 같습니다.
- 요소가 이미 존재하는 경우: 해당 요소의 기존 점수에 increment 값이 더해집니다.
- 요소가 존재하지 않는 경우: increment 값을 점수로 하여 새로운 요소로 추가됩니다.
- 키 자체가 존재하지 않는 경우: 해당 요소를 유일한 멤버로 가지는 새로운 정렬된 집합이 생성됩니다.
increment 값은 반드시 숫자의 문자열 형태여야 하며, 양수·음수의 정수뿐 아니라 배정밀도(double precision) 부동 소수점 숫자도 사용할 수 있습니다. 특히 음수를 인자로 전달하면 점수가 오히려 감소(decrement)하므로, 이를 활용하면 점수 차감 로직도 간단하게 구현할 수 있습니다.
단, 키는 존재하지만 저장된 값이 정렬된 집합(sorted set) 타입이 아닐 경우에는 에러가 반환됩니다.
문법(Syntax)
redis host:post> ZINCRBY <keyname> <increment> <element>
반환값(Output)
- (string) reply : 해당 요소의 새로운 점수(new score)를 문자열로 반환 - Error : 키가 존재하지만 저장된 값이 정렬된 집합이 아닐 경우 에러 반환
사용 예제(Example)

참고 자료(References)
- ZINCRBY 공식 문서 (Redis Official Docs)
지금까지 Redis 데이터 저장소에 저장된 정렬된 집합 값에서 요소의 점수를 증가시키는 ZINCRBY 명령어의 사용법을 살펴보았습니다. 내용이 도움이 되셨다면 댓글로 의견을 남겨주시고, 주변에도 널리 공유해 주세요!