수색…


소개

Redis는 데이터베이스의 데이터를 모델링하기 위해 수학적 세트와 유사한 집합 데이터 유형을 지원합니다. 집합은 고유 한 순서가 지정되지 않은 구성원으로 구성된 복합 데이터 유형입니다. 두 세트를 취하여 세 번째 세트를 생성하는 조합 조작뿐만 아니라 구성원, 크기 조작의 추가 및 제거를 지원합니다. Redis의 세트는 대부분의 프로그래밍 언어의 세트와 유사합니다.

통사론

  • SADD 핵심 회원 [회원 ...]
  • SISMEMBER 핵심 멤버
  • SCARD 키
  • SADD 핵심 회원 [회원 ...]

비고

Redis 설정 데이터 유형에 대한 전체 설명서는 Redis.io 에서 찾을 수 있습니다.

세트의 크기

세트의 크기는 SCARD 명령을 사용하여 판별 할 수 있습니다. SCARD는 세트의 카디널리티 또는 세트의 구성원 수를 리턴합니다. 예를 들어, Redis set my_set을 데이터베이스에 저장 한 경우 (Apple, Orange, Banana) 다음 코드를 사용하여 크기를 얻을 수 있습니다.

SCARD my_set

예제 세트의 경우 3을 반환합니다. 사용자가 존재하지 않는 키에 SCARD 명령을 실행하면 Redis는 0을 반환합니다.

세트에 항목 추가하기

항목을 세트에 추가하는 기본 Redis 명령은 SADD입니다. 키와 하나 이상의 멤버를 가져 와서 주어진 키에 저장된 집합에 추가합니다.

예를 들어 사과, 배, 바나나 등의 아이템으로 세트를 만들고 싶다고합시다. 다음 중 하나를 실행할 수 있습니다.

SADD fruit apple
SADD fruit pear
SADD fruit banana

또는

SADD fruit apple pear banana

어느 하나를 실행 한 후, 나는 3 가지 항목으로 설정된 과일을 갖습니다.

이미 세트에있는 항목을 추가하려고해도 아무 효과가 없습니다. 위의 코드를 사용하여 과일 세트를 설정 한 후 사과를 다시 추가하려고하면 :

SADD fruit apple

Redis는 과일 세트에 사과를 추가하려고 시도하지만, 이미 세트에 들어 있으므로 아무것도 변경되지 않습니다.

SADD 명령의 결과는 항상 Redis가 세트에 추가 한 항목 수입니다. Apple을 다시 추가하려고 시도하면 결과가 0으로 반환됩니다.

Redis의 멤버 항목은 대소 문자를 구분하므로 Apple과 Apple은 별도의 두 항목으로 처리됩니다.

회원 자격 테스트

Redis는 SISMEMBER 명령을 제공하여 특정 항목이 이미 집합의 구성원인지 테스트합니다. SISMEMBER 명령을 사용하여 사과가 이미 과일 세트의 구성원인지 테스트하고 볼 수 있습니다.

이전 예제에서 만든 과일 세트를 만들면 다음 테스트를 사용하여 Apple이 포함되어 있는지 확인할 수 있습니다.

SISMEMBER fruit apple

SISMEMBER는 항목이 이미 있으므로 1을 반환합니다.

개가 나의 과일 세트의 일원인지보기 위하여 나는 시도했다 :

SISMEMBER fruit dog

개가 과일 세트에 없기 때문에 Redis는 0을 반환합니다.

사용자가 존재하지 않는 키와 함께 SISMEMBER 명령을 사용하려고 시도하면 Redis는 멤버십 없음을 나타내는 0을 반환하지만 이미 설정되지 않은 데이터 유형을 보유한 키와 함께 SISMEMBER를 사용하면 Redis는 오류를 반환합니다.



Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow