ホームページ データベース mysql チュートリアル Nosql之Redis: list数据类型及操作命令

Nosql之Redis: list数据类型及操作命令

Jun 07, 2016 pm 04:29 PM
l list nosql redis 注文 操作する データ タイプ

list类据类型及操作命令 一:概述 List类型是按照插入顺序排序的字符串链表。 二:相关操作命令 1: lpush 描述:从list头部添加一个元素.如果key不存在则先创建一个空链表,再将数据从头部插入. 命令格式: lpush key value [value...] 返回值:插入后链表中元素的

list类据类型及操作命令

一:概述
List类型是按照插入顺序排序的字符串链表。

二:相关操作命令

1: lpush

描述:从list头部添加一个元素.如果key不存在则先创建一个空链表,再将数据从头部插入.
命令格式: lpush key value [value...]
返回值:插入后链表中元素的数量。
时间复杂度: O(1)
操作如下:
redis 127.0.0.1:6379> lpush user_list v_1
(integer) 1
redis 127.0.0.1:6379> lrange user_list 0 2
1) “v_1″
redis 127.0.0.1:6379> lpush user_list v_1 v_2 v_3
(integer) 4
redis 127.0.0.1:6379> lrange user_list 0 6
1) “v_3″
2) “v_2″
3) “v_1″
4) “v_1″
2: lpushx
描述:当Key存在时,该命令才会在其所关联的List Value的头部插入参数中给出的Value,否则将不会有任何操作发生。
返回值:插入链表中元素的数量.
时间复杂度: O(1)
操作如下:
redis 127.0.0.1:6379> lpushx user_list_1 aa
(integer) 0
redis 127.0.0.1:6379> lrange user_list_1 0 6
(empty list or set)
redis 127.0.0.1:6379> lpushx user_list v_4
(integer) 5
redis 127.0.0.1:6379> lrange user_list 0 8
1) “v_4″
2) “v_3″
3) “v_2″
4) “v_1″
5) “v_1″

3:lrange
描述:从自定范围内返回list中元素.0表示链表头部的第一个元素。其中start的值也可以为负值,-1将表示链表中的最后一个元素,即尾部元素,-2表示倒数第二个并以此类推。
返回值:返回指定范围内元素列表.
时间复杂度:O(S+N) S为start参数表示的偏移量,N表示元素的数量。
语法格式: lrange key start stop

操作如下:
redis 127.0.0.1:6379> lrange user_list 0 8
1) “v_4″
2) “v_3″
3) “v_2″
4) “v_1″
5) “v_1″
redis 127.0.0.1:6379> lrange user_list -2 -1
1) “v_1″
2) “v_1″
redis 127.0.0.1:6379>

4: lpop
描述:返回并弹出指定Key关联的链表中的第一个元素,即头部元素,。如果该Key不存,返回nilr.
返回值:返回头部元素.
时间复杂度:O(1)
操作如下:
redis 127.0.0.1:6379> lpop user_list
“v_4″

5:llen
描述:获取链表中元素的数量,如果该Key不存在,则返回0.不是list类型KEY时,则报错.
时间复杂度: O(1)
操作如下:
redis 127.0.0.1:6379> llen user_list
(integer) 4
redis 127.0.0.1:6379> llen user_list1
(integer) 0
redis 127.0.0.1:6379> llen name
(error) ERR Operation against a key holding the wrong kind of value

6:lrem
描述:从key对应的list中删除n个和value相同的元素(n 时间复杂度:O(N) N表示链表中元素的数量
返回值:返回被删除元素的个数
操作命令如下:
redis 127.0.0.1:6379> lrange user_list 0 9
1) “v_3″
2) “v_2″
3) “v_1″
4) “v_1″
redis 127.0.0.1:6379> lrem user_list 2 v_1
(integer) 2
redis 127.0.0.1:6379> lrange user_list 0 9
1) “v_3″
2) “v_2″
7: lset
描述:? 更新某个位置元素的值,如果索引值Index超出了链表中元素的数量范围,该命令将返回相关的错误信息。
时间复杂度:O(N) N表示链表中元素的数量 注:但是设定头部或尾部的元素时,其时间复杂度为O(1)
操作命令如下:
redis 127.0.0.1:6379> lset user_list 3 val
(error) ERR index out of range
redis 127.0.0.1:6379> lset user_list 1 vv
OK
redis 127.0.0.1:6379> lrange user_list 0 3
1) “v_3″
2) “vv”

8:lindex
描述:获取list中指定元素.
时间复杂度: O(N) 注:对于头部或尾部元素,其时间复杂度为O(1)。
返回值:返回请求的元素,如果index超出范围,则返回nil。
操作命令如下:
redis 127.0.0.1:6379> lindex user_list 8
(nil)
redis 127.0.0.1:6379> lindex user_list 0
“v_3″

9: ltrim
描述: 裁剪一个 List 到指定范围
时间复杂度:O(N) N:被删除的元素数量
操作命令如下:
redis 127.0.0.1:6379> lrange user_list 0 9
1) “v9″
2) “v7″
3) “v6″
4) “v5″
5) “v_3″
6) “vv”
redis 127.0.0.1:6379> ltrim user_list 0 3
OK
redis 127.0.0.1:6379> lrange user_list 0 9
1) “v9″
2) “v7″
3) “v6″
4) “v5″

10:linsert
描述:在list特定位置前或后面添加元素
语法格式:LINSERT key BEFORE|AFTER pivot value
时间复杂度:O(N) N表示在找到该元素pivot之前需要遍历的元素数量
返回值:成功插入后链表中元素的数量,如果没有找到pivot,返回-1,如果key不存在,返回0。
操作如下:
redis 127.0.0.1:6379> lrange user_list 0 9
1) “v9″
2) “v7″
3) “v6″
4) “v5″
redis 127.0.0.1:6379> linsert user_list before v9 v0
(integer) 5
redis 127.0.0.1:6379> lrange user_list 0 9
1) “v0″
2) “v9″
3) “v7″
4) “v6″
5) “v5″
redis 127.0.0.1:6379> linsert user_list after v9 v11
(integer) 6
redis 127.0.0.1:6379> lrange user_list 0 9
1) “v0″
2) “v9″
3) “v11″
4) “v7″
5) “v6″
6) “v5″
redis 127.0.0.1:6379>

11: rpush
描述:往list尾部压入元素
时间复杂度: O(1)
语法格式:RPUSH key value [value ...]
返回值:插入后的元素数量
操作命令如下:
redis 127.0.0.1:6379> rpush user_list v12 v13
(integer) 8
redis 127.0.0.1:6379> lrange user_list 0 10
1) “v0″
2) “v9″
3) “v11″
4) “v7″
5) “v6″
6) “v5″
7) “v12″
8) “v13″

12: rpushx
描述:当key存时,往list尾部压入元素,不存在没有操作
时间复杂度: O(1)
返回值:插入后的元素数量

13: rpop
描述:弹出尾部元素.如果该Key不存,返回nil。
时间复杂度: O(1)

10: rpoplpush
描述:弹出 (源list)中最后一个元素并将其压入 (目标list)
时间复杂度: O(1)
返回值:返回弹出和插入的元素。
操作命令如下:
redis 127.0.0.1:6379> rpoplpush user_list user_list_1
“v13″
redis 127.0.0.1:6379> lrange user_list_1 0 2
1) “v13″

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Windows 11 10.0.22000.100 のインストール時の 0x80242008 エラーの解決策 Windows 11 10.0.22000.100 のインストール時の 0x80242008 エラーの解決策 May 08, 2024 pm 03:50 PM

1. [スタート]メニューを起動し、[cmd]と入力し、[コマンドプロンプト]を右クリックし、[管理者として実行]を選択します。 2. 次のコマンドを順番に入力します (注意してコピーして貼り付けてください): SCconfigwuauservstart=auto、Enter キーを押す SCconfigbitsstart=auto、Enter キーを押す SCconfigcryptsvcstart=auto、Enter キーを押す SCconfigtrustedinstallerstart=auto、Enter キーを押す SCconfigwuauservtype=share、Enter キーを押す netstopwuauserv 、enter netstopcryptS を押す

アメリカ空軍が初のAI戦闘機を公開し注目を集める!大臣はプロセス全体を通じて干渉することなく個人的にテストを実施し、10万行のコードが21回にわたってテストされました。 アメリカ空軍が初のAI戦闘機を公開し注目を集める!大臣はプロセス全体を通じて干渉することなく個人的にテストを実施し、10万行のコードが21回にわたってテストされました。 May 07, 2024 pm 05:00 PM

最近、軍事界は、米軍戦闘機が AI を使用して完全自動空戦を完了できるようになったというニュースに圧倒されました。そう、つい最近、米軍のAI戦闘機が初めて公開され、その謎が明らかになりました。この戦闘機の正式名称は可変安定性飛行シミュレーター試験機(VISTA)で、アメリカ空軍長官が自ら飛行させ、一対一の空戦をシミュレートした。 5 月 2 日、フランク ケンダル米国空軍長官は X-62AVISTA でエドワーズ空軍基地を離陸しました。1 時間の飛行中、すべての飛行動作が AI によって自律的に完了されたことに注目してください。ケンダル氏は「過去数十年にわたり、私たちは自律型空対空戦闘の無限の可能性について考えてきたが、それは常に手の届かないものだと思われてきた」と語った。しかし今では、

Golang API のキャッシュ戦略と最適化 Golang API のキャッシュ戦略と最適化 May 07, 2024 pm 02:12 PM

GolangAPI のキャッシュ戦略により、パフォーマンスが向上し、サーバーの負荷が軽減されます。一般的に使用される戦略は、LRU、LFU、FIFO、TTL です。最適化手法には、適切なキャッシュ ストレージの選択、階層型キャッシュ、無効化管理、監視とチューニングが含まれます。実際には、データベースからユーザー情報を取得する API を最適化するために LRU キャッシュが使用されます。それ以外の場合は、データベースからデータを取得した後にキャッシュを更新できます。

PHP 開発におけるキャッシュ メカニズムとアプリケーションの実践 PHP 開発におけるキャッシュ メカニズムとアプリケーションの実践 May 09, 2024 pm 01:30 PM

PHP 開発では、キャッシュ メカニズムにより、頻繁にアクセスされるデータがメモリまたはディスクに一時的に保存され、データベース アクセスの数が削減され、パフォーマンスが向上します。キャッシュの種類には主にメモリ、ファイル、データベース キャッシュが含まれます。キャッシュは、組み込み関数またはサードパーティのライブラリ (cache_get() や Memcache など) を使用して PHP に実装できます。一般的な実用的なアプリケーションには、データベース クエリ結果をキャッシュしてクエリ パフォーマンスを最適化したり、ページ出力をキャッシュしてレンダリングを高速化したりすることが含まれます。キャッシュ メカニズムにより、Web サイトの応答速度が効果的に向上し、ユーザー エクスペリエンスが向上し、サーバーの負荷が軽減されます。

70B モデルは数秒で 1,000 トークンを生成、コード書き換えは GPT-4o を超える、OpenAI が投資したコード成果物である Cursor チームによる 70B モデルは数秒で 1,000 トークンを生成、コード書き換えは GPT-4o を超える、OpenAI が投資したコード成果物である Cursor チームによる Jun 13, 2024 pm 03:47 PM

70B モデルでは、数秒で 1,000 個のトークンを生成でき、これはほぼ 4,000 文字に相当します。研究者らは Llama3 を微調整し、高速化アルゴリズムを導入しました。ネイティブ バージョンと比較して、速度は 13 倍高速になりました。速いだけでなく、コード書き換えタスクのパフォーマンスは GPT-4o をも上回ります。この成果は、人気の AI プログラミング成果物 Cursor を開発したチーム、anysphere によるもので、OpenAI も投資に参加しました。有名な高速推論アクセラレーション フレームワークである Groq では、70BLlama3 の推論速度は 1 秒あたり 300 トークンを超える程度であることを知っておく必要があります。 Cursor の速度により、ほぼ瞬時に完全なコード ファイル編集を実現すると言えます。カースと言うと良い奴だと言う人もいる

AI スタートアップ企業は一斉に OpenAI に転職し、イリヤが去った後にセキュリティ チームが再編成されました。 AI スタートアップ企業は一斉に OpenAI に転職し、イリヤが去った後にセキュリティ チームが再編成されました。 Jun 08, 2024 pm 01:00 PM

先週、社内の辞任と社外からの批判が相次ぐ中、OpenAIは内外のトラブルに見舞われた。 - 未亡人姉妹への侵害が世界中で白熱した議論を巻き起こした - 「覇権条項」に署名した従業員が次々と暴露 - ネットユーザーがウルトラマンの「」をリストアップ噂の払拭: Vox が入手した漏洩情報と文書によると、アルトマンを含む OpenAI の上級幹部はこれらの株式回収条項をよく認識しており、承認しました。さらに、OpenAI には、AI セキュリティという深刻かつ緊急の課題が直面しています。最近、最も著名な従業員2名を含むセキュリティ関連従業員5名が退職し、「Super Alignment」チームが解散したことで、OpenAIのセキュリティ問題が再び注目を集めている。フォーチュン誌は OpenA を報じた。

Win11 英語 21996 を簡体字中国語 22000 にアップグレードする方法_Win11 英語 21996 を簡体字中国語 22000 にアップグレードする方法 Win11 英語 21996 を簡体字中国語 22000 にアップグレードする方法_Win11 英語 21996 を簡体字中国語 22000 にアップグレードする方法 May 08, 2024 pm 05:10 PM

まず、システム言語を簡体字中国語表示に設定して再起動する必要があります。もちろん、以前に表示言語を簡体字中国語に変更したことがある場合は、この手順をスキップできます。次に、レジストリ regedit.exe の操作を開始し、左側のナビゲーション バーまたは上部のアドレス バーで HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlNlsLanguage に直接移動し、InstallLanguage キーの値と Default キーの値を 0804 に変更します (英語に変更する場合)。まずシステムの表示言語を en-us に設定し、システムを再起動してから、すべてを 0409 に変更します) この時点でシステムを再起動する必要があります。

Astar ステーキングの原則、収入の解体、エアドロップ プロジェクトと戦略、および運営のナニー レベルの戦略 Astar ステーキングの原則、収入の解体、エアドロップ プロジェクトと戦略、および運営のナニー レベルの戦略 Jun 25, 2024 pm 07:09 PM

目次 Astar Dapp ステーキングの原則 ステーキング収益 潜在的なエアドロップ プロジェクトの解体: AlgemNeurolancheHealthreeAstar Degens DAOVeryLongSwap ステーキング戦略と運用 「AstarDapp ステーキング」は今年初めに V3 バージョンにアップグレードされ、ステーキング収益に多くの調整が加えられましたルール。現在、最初のステーキング サイクルが終了し、2 番目のステーキング サイクルの「投票」サブサイクルが始まったばかりです。 「追加報酬」特典を獲得するには、この重要な段階を把握する必要があります (6 月 26 日まで続く予定で、残りは 5 日未満です)。 Astarステーキング収入を詳しく説明します。

See all articles