[Redis] Sets 명령어 설명 & 예제

' ); document.write( '' ); (adsbygoogle = window.adsbygoogle || []).push({}); } else if (window.innerWidth < 768) { document.write( '‘ ); (adsbygoogle = window.adsbygoogle || []).push({}); }

Sets 관련 명령어 예제

– SADD

설명키에 저장된 집합에 지정된 멤버를 추가합니다. 이 집합의 구성원 인 경우 지정된 멤버는 무시됩니다. key가 없으면 지정된 멤버를 추가하기 전에 새 세트가 만들어집니다.시간복잡도 : O(1)

redis-cli > SADD key member [member …]

redis > SADD test hello world 

 (integer) 1 

 redis > SADD test world 

 (integer) 0 

 redis > SMEMBERS test 

 1) “hello”  2) “world”

 

– SMEMBERS

설명 : 키에 저장된 설정 값의 모든 멤버를 반환합니다.시간복잡도 : O(1)

redis-cli > SMEMBERS key

 redis > SMEMBERS test 1) “hello” 2) “world”

 

 

– SREM

설명키에 저장된 집합에서 지정된 멤버를 제거합니다. 해당 집합의 구성원이 아닌 멤버는 무시됩니다. key가 없으면 빈 세트로 처리되고 명령은 0을 리턴 합니다. key에 저장된 값이 집합이 아닌 경우 오류가 반환됩니다.시간복잡도 : O(1)

redis-cli > SREM key member [member …]

 redis > SREM test hello (integer) 1 redis > SREM test hello (integer) 0 redis > SMEMBERS test 1) “world”

 

 

– SCARD

설명 : 키에 저장된 개수를 반환합니다.시간복잡도 : O(1)

redis-cli > SCARD key

 redis > SADD test apple (integer) 1 redis > SADD test banana (integer) 1 redis > SCARD test (integer) 2

 

– SDIFF

설명최초의 키 값(key1)을 기준으로 비교되는 키 값(key …)의 차집합을 리턴합니다.시간복잡도 : O(N)

redis-cli > SDIFF key [key …]

 redis > SADD test1 a b c (integer) 3 redis > SADD test2 c d e (integer) 3 redis > SDIFF test1 test2 1) “a” 2) “b”

 

 

– SDIFFSTORE

설명SDIFF 명령어와 동일하지만 키 값을 반환하는 대신 새로운 키 값에 저장한다.시간복잡도 : O(N)

redis-cli > SDIFFSTORE destination key [key …]

 redis > SADD test1 a b c (integer) 3 redis > SADD test2 c d e (integer) 3 redis > SDIFFSTORE test3 test1 test2 (integer) 2 redis > smembers test3 1) “a” 2) “b”

 

– SINTER

설명 : 지정된 키 값의 교집합을 리턴합니다.시간복잡도 : O(N*M)

redis-cli > SINTER key [key …]

 redis > SADD test1 a b c (integer) 3 redis > SADD test2 c d e (integer) 3 redis > SADD test3 c f g (integer) 3 redis > SINTER test1 test2 test3 1) “c”

 

 

– SINTERSTORE

설명 SINTER 명령어와 동일하지만 키 값의 교집합을 새로운 키에 저장합니다.시간복잡도 : O(N*M)

redis-cli > SINTERSTORE destination key [key …]

 

 redis > SADD test1 a b c (integer) 3 redis > SADD test2 c d e (integer) 3 redis > SADD test3 c f g (integer) 3 redis > SINTERSTORE test4 test1 test2 test3 (integer) 3 redis > SMEMBERS test4 1) “c”

 

 

– SISMEMBER

설명 : member가 key에 저장된 집합의 구성원인지 여부를 반환. 1이면 존재, 0이면 존재하지 않음시간복잡도 : O(1)

redis-cli > SISMEMBER key member

 redis > SADD test1 a b c (integer) 3 redis > SISMEMBER test1 a (integer) 1 redis > SISMEMBER test1 b (integer) 1 redis > SISMEMBER test1 d (integer) 0

 

 

– SMOVE

설명 : source key 에서 destination key 로 멤버가 이동. 즉 source 에서는 삭제가 되고, destination에 추가시간복잡도 : O(1)

redis-cli > SMOVE source destination member

 redis > SADD test1 a b c (integer) 3 redis > SADD test2 d e f (integer) 3 redis > SMOVE test1 test2 “c” (integer) 1 redis > SMEMBERS test1 1) “a” 2) “b” redis > SMEMBERS test2 1) “c” 2) “d” 3) “e” 4) “f”

 

 

– SPOP

설명 : 키에 설정된 값 저장소에서 하나 이상의 임의의 요소를 제거하고 반환합니다.시간복잡도 : O(1)

redis-cli > SPOP key [count]

 redis > SADD test1 a b c d e f g h (integer) 8 redis > SPOP test1 4 1) “a” 2) “d” 3) “f” 4) “h” redis > SMEMBERS test1 1) “b” 2) “c” 3) “e” 4) “g”

 

 

– SUNION

설명 : 지정된 모든 세트의 결합으로 부터 생성된 세트의 합집합을 반환합니다.시간복잡도 : O(N)

redis-cli > SUNION key [key …]

 redis > SADD test1 a b c (integer) 3 redis > SADD test2 c d e (integer) 3 redis > SUNION test1 test2 1) “c” 2) “a” 3) “d” 4) “b” 5) “e”

 

 

– SUNIONSTORE

설명 : SUNION 명령어와 동일하지만 생성된 세트의 합집합을 저장합니다.시간복잡도 : O(N)

redis-cli > SUNION destination key [key …]

 redis > SADD test1 a b c (integer) 3 redis > SADD test2 c d e (integer) 3 redis > SUNIONSTORE test3 test1 test2 (integer) 3

 redis > SMEMBERS test3 1) “d” 2) “b” 3) “c” 4) “a” 5) “e”

댓글 달기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

위로 스크롤