Методы для операций над строковыми значениями ключей
Метод set
Добавление нового ключа, со строковым значением.
|
1 2 |
my $status = $redis->set( 'price.mobile.Nokia.N8' => '15.580' ); print $status."\n"; # выведет OK |
Имена для ключей лучше давать, придерживаясь определенной системы, например, «type:id:field» или «type.id.field» . Это облегчит Вам работу, снизит умственные затраты на понимание программного кода и содержимого БД, расширит возможности поиска и сортировки данных.
Метод get
Получение значения для заданного ключа.
|
1 2 3 |
my $value = $redis->get('price.mobile.N8'); print $value."\n"; # выведет 15.580 |
Метод mget
Получение значений сразу для нескольких ключей.
|
1 2 3 4 |
@values = $redis->mget('price.mobile.Nokia.6700_Classic', 'price.mobile.Nokia.N8'); print join(', ', @values)."\n"; # выведет ", 15.580", т.к. первый ключ в базе отсутствует |
Методы для операций над множествами в значениях ключей
Redis Sets — это неупорядоченные множества, состоящие из строк.
Redis позволяет добавлять новые элементы к множеству, удалять старые, проверять элементы на наличие в множестве.
Значения элементов множества не могут повторяться. Если равнозначный элемент уже добавлен ко множеству — новый добавляться не будет, и функция SADD вернет 0.
Метод sadd
|
1 |
$r->sadd( $key, $member ); |
Добавление нового элемента ко множеству.
|
1 |
my $status =$redis->sadd('store.mobile.Nokia.N8', 'StartMaster' ); |
Если равнозначный элемент уже присутствует во множестве, sadd вернет 0. Если указанный ключ еще не существует в БД, он будет создан.
Метод srem
|
1 |
$r->srem( $key, $member ); |
Удаление заданного элемента множества.
|
1 |
$status = $redis->srem('store.mobile.Nokia.N8', 'MTC'); |
Метод scard
|
1 |
my $elements = $r->scard( $key ); |
Получение числа — количества элементов множества.
|
1 2 |
my $elements = $redis->scard('store.mobile.Nokia.N8'); print "found members - ".$elements."\n"; # вывод: 11 |
Метод sismember
|
1 |
$r->sismember( $key, $member ); |
Проверка элемента на наличие во множестве.
|
1 |
$status = $redis->sismember('store.mobile.Nokia.N8', 'Ozoom'); |
Метод sinter
|
1 |
$r->sinter( $key1, $key2, ... ); |
Вычисление пересечений между заданными множествами.
|
1 2 3 4 5 6 7 8 |
my $status = $redis->sadd('store.mobile.Nokia.N8', 'Euroset' ); $status = $redis->sadd('store.mobile.Nokia.N8', 'MTC' ); $status = $redis->sadd('store.mobile.Nokia.6700_Classic', 'Euroset' ); $status = $redis->sadd('store.mobile.Nokia.6700_Classic', 'Ozoom' ); my @res = $redis->sinter('store.mobile.Nokia.6700_Classic', 'store.mobile.Nokia.N8'); # Массив @res содержит 1 элемент - 'Euroset' |