SMEMBERS
Syntax
SMEMBERS key
- Available since:
- Redis Open Source 1.0.0
- Time complexity:
- O(N) where N is the set cardinality.
- ACL categories:
-
@read
,@set
,@slow
,
Returns all the members of the set value stored at key
.
This has the same effect as running SINTER
with one argument key
.
Examples
redis> SADD myset "Hello"
(integer) 1
redis> SADD myset "World"
(integer) 1
redis> SMEMBERS myset
1) "Hello"
2) "World"
import redis
r = redis.Redis(decode_responses=True)
res1 = r.sadd("myset", "Hello", "World")
print(res1) # >>> 2
res2 = r.sadd("myset", "World")
print(res2) # >>> 0
res3 = r.smembers("myset")
print(res3) # >>> {'Hello', 'World'}
res4 = r.sadd("myset", "Hello", "World")
print(res4) # >>> 2
res5 = r.smembers("myset")
print(res5) # >>> {'Hello', 'World'}
import { createClient } from 'redis';
const client = createClient();
await client.connect().catch(console.error);
const res1 = await client.sAdd('myset', ['Hello', 'World']);
console.log(res1); // 2
const res2 = await client.sAdd('myset', ['World']);
console.log(res2); // 0
const res3 = await client.sMembers('myset')
console.log(res3); // ['Hello', 'World']
const res4 = await client.sAdd('myset', ['Hello', 'World']);
console.log(res4); // 2
const res5 = await client.sMembers('myset')
console.log(res5); // ['Hello', 'World']
await client.close();
import static java.util.stream.Collectors.toList;
import static org.junit.jupiter.api.Assertions.assertArrayEquals;
import static org.junit.jupiter.api.Assertions.assertEquals;
import java.util.Set;
import redis.clients.jedis.UnifiedJedis;
public class CmdsSetExample {
public void run() {
UnifiedJedis jedis = new UnifiedJedis("redis://localhost:6379");
long sAddResult1 = jedis.sadd("myset", "Hello");
System.out.println(sAddResult1); // >>> 1
long sAddResult2 = jedis.sadd("myset", "World");
System.out.println(sAddResult2); // >>> 1
long sAddResult3 = jedis.sadd("myset", "World");
System.out.println(sAddResult3); // >>> 0
Set<String> sAddResult4 = jedis.smembers("myset");
System.out.println(sAddResult4.stream().sorted().collect(toList()));
// >>> [Hello, World]
long sMembersResult1 = jedis.sadd("myset", "Hello", "World");
System.out.println(sMembersResult1); // >>> 2
Set<String> sMembersResult2 = jedis.smembers("myset");
System.out.println(sMembersResult2.stream().sorted().collect(toList()));
// >>> [Hello, World]
jedis.close();
}
}
package example_commands_test
import (
"context"
"fmt"
"github.com/redis/go-redis/v9"
)
func ExampleClient_sadd_cmd() {
ctx := context.Background()
rdb := redis.NewClient(&redis.Options{
Addr: "localhost:6379",
Password: "", // no password docs
DB: 0, // use default DB
})
sAddResult1, err := rdb.SAdd(ctx, "myset", "Hello").Result()
if err != nil {
panic(err)
}
fmt.Println(sAddResult1) // >>> 1
sAddResult2, err := rdb.SAdd(ctx, "myset", "World").Result()
if err != nil {
panic(err)
}
fmt.Println(sAddResult2) // >>> 1
sAddResult3, err := rdb.SAdd(ctx, "myset", "World").Result()
if err != nil {
panic(err)
}
fmt.Println(sAddResult3) // >>> 0
sMembersResult, err := rdb.SMembers(ctx, "myset").Result()
if err != nil {
panic(err)
}
fmt.Println(sMembersResult) // >>> [Hello World]
}
func ExampleClient_smembers_cmd() {
ctx := context.Background()
rdb := redis.NewClient(&redis.Options{
Addr: "localhost:6379",
Password: "", // no password docs
DB: 0, // use default DB
})
sAddResult, err := rdb.SAdd(ctx, "myset", "Hello", "World").Result()
if err != nil {
panic(err)
}
fmt.Println(sAddResult) // >>> 2
sMembersResult, err := rdb.SMembers(ctx, "myset").Result()
if err != nil {
panic(err)
}
fmt.Println(sMembersResult) // >>> [Hello World]
}
using StackExchange.Redis;
public class CmdsSetExample
{
public void Run()
{
var muxer = ConnectionMultiplexer.Connect("localhost:6379");
var db = muxer.GetDatabase();
bool sAddResult1 = db.SetAdd("myset", "Hello");
Console.WriteLine(sAddResult1); // >>> True
bool sAddResult2 = db.SetAdd("myset", "World");
Console.WriteLine(sAddResult2); // >>> True
bool sAddResult3 = db.SetAdd("myset", "World");
Console.WriteLine(sAddResult2); // >>> False
RedisValue[] sAddResult4 = db.SetMembers("myset");
Array.Sort(sAddResult4);
Console.WriteLine(string.Join(", ", sAddResult4));
// >>> Hello, World
long sMembersResult1 = db.SetAdd(
"myset", ["Hello", "World"]
);
Console.WriteLine(sMembersResult1); // >>> 2
RedisValue[] sMembersResult2 = db.SetMembers("myset");
Array.Sort(sMembersResult2);
Console.WriteLine(string.Join(", ", sMembersResult2));
// >>> Hello, World
}
}
<?php
require 'vendor/autoload.php';
use Predis\Client as PredisClient;
class CmdSetTest
{
public function testCmdSet() {
$r = new PredisClient([
'scheme' => 'tcp',
'host' => '127.0.0.1',
'port' => 6379,
'password' => '',
'database' => 0,
]);
$res1 = $r->sadd('myset', ['Hello', 'World']);
echo $res1 . PHP_EOL;
// >>> 2
$res2 = $r->sadd('myset', ['World']);
echo $res2 . PHP_EOL;
// >>> 0
$res3 = $r->smembers('myset');
sort($res3);
echo json_encode($res3) . PHP_EOL;
// >>> ["Hello","World"]
$res4 = $r->sadd('myset', ['Hello', 'World']);
echo $res4 . PHP_EOL;
// >>> 2
$res5 = $r->smembers('myset');
sort($res5);
echo json_encode($res5) . PHP_EOL;
// >>> ["Hello","World"]
}
}
Give these commands a try in the interactive console:
Return information
Array reply: an array with all the members of the set.