2011-10-25 5 views
1

私は、100,000を超えるエントリを持つuseridsと呼ばれるRedisセットを持っています。これは、RedisのセットでユーザーIDを見つけたことを意味1324. 12288357681Redis:私はシスメムを間違って使用していますか?

:私は

redis-cli smembers userids | grep 12288357681 

を実行すると

はそれはのような値を返します。

しかし、私は実行すると:

redis-cli sismember userids 12288357681 

それは、これを返すには:(integer) 0

これはRedisのがセットでユーザーIDを見つけることができませんなかったことを意味します。


これはどのように可能ですか? sismember関数を間違って使用していますか?

+0

あなたがgrepしたときに表示されるIDは、grepと同じではありません。 – Theo

+0

@Theoは投稿を修正しました。 grepは私によって正しく行われました。私は間違って、stackoverflowのテキストボックスに入力したが、私はそれを正しくLinuxのボックスでやった。問題は依然として赤いサーバがある – eric

答えて

1

おそらく12288357681の代わりに1324. 12288357681の値が格納されていますか?

以下のテストをチェックしてください:

[email protected]:~$ redis-cli 
redis 127.0.0.1:6379> sadd userids 12288357681 
(integer) 1 
redis 127.0.0.1:6379> exit 
[email protected]:~$ redis-cli smembers userids | grep 12288357681 
12288357681 
[email protected]:~$ redis-cli sismember userids 12288357681 
(integer) 1 

grepの出力に注意してください、それはあなたのものと異なっています。

関連する問題