日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 运维知识 > 数据库 >内容正文

数据库

用mongo实现mysql视图_浅谈 MongoDB 的视图

發(fā)布時(shí)間:2023/12/20 数据库 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 用mongo实现mysql视图_浅谈 MongoDB 的视图 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

2018 年 9 月 18 日,由 Robert Gravelle 撰寫

在關(guān)系數(shù)據(jù)庫(kù)中,視圖是由查詢定義的可搜索數(shù)據(jù)子集。視圖有時(shí)被稱為“虛擬表”,因?yàn)樗鼈儾淮鎯?chǔ)數(shù)據(jù),但可以像表一樣被查詢。MongoDB 最近在版本 3.4 中引入了視圖。在今天的文章中,我們將學(xué)習(xí)如何使用 Navicat for MongoDB GUI 管理和開發(fā)工具在 MongoDB 中創(chuàng)建視圖。

打開視圖對(duì)象列表

可以使用下列兩種方法從 Navicat 主窗口打開視圖對(duì)象列表:

點(diǎn)擊主工具欄中的“視圖”命令按鈕。

在數(shù)據(jù)庫(kù)對(duì)象樹中選擇“視圖”對(duì)象。

Navicat 視圖設(shè)計(jì)器

視圖設(shè)計(jì)器是一個(gè)專門的Navicat for MongoDB 工具,用于創(chuàng)建和編輯視圖。你可以通過(guò)對(duì)象選項(xiàng)卡工具欄中的“新建視圖”按鈕打開它:

你還可以右擊(在 macOS 上使用 Ctrl+點(diǎn)擊)數(shù)據(jù)庫(kù)對(duì)象樹中的“視圖”對(duì)象,然后從彈出菜單中選擇“新建視圖”:

提示:你可以在對(duì)象選項(xiàng)卡中右單(在 macOS 上使用 Ctrl+點(diǎn)擊)視圖并從彈出菜單中選擇“創(chuàng)建打開視圖快捷方式”來(lái)創(chuàng)建視圖快捷方式。此選項(xiàng)用于為你提供直接在 Navicat 主窗口中打開視圖的便捷方式。

創(chuàng)建視圖

在 MongoDB 中創(chuàng)建視圖時(shí),引擎會(huì)運(yùn)行聚合(aggregation)。因此,創(chuàng)建視圖需要我們指定一個(gè)集合或一個(gè)現(xiàn)有的視圖。

我們將創(chuàng)建一個(gè)僅顯示演員全名的視圖。

在“常規(guī)”選項(xiàng)卡上,從“集合/查看”下拉列表中選擇 actor 集合。

現(xiàn)在點(diǎn)擊“管道”選項(xiàng)卡。它包含“運(yùn)算符”下拉列表以及“表達(dá)式“文本字段。

MongoDB 具有許多用于構(gòu)造表達(dá)式的運(yùn)算符,以便在聚合管道階段中使用這些表達(dá)式來(lái)構(gòu)建視圖。運(yùn)算符表達(dá)式與帶引數(shù)的函數(shù)類似。通常,這些表達(dá)式采用一組引數(shù)并具有以下形式:

{ : [ , ... ] }

我們需要從列表中選擇運(yùn)算符 $project。它將帶有請(qǐng)求字段的文檔傳遞到管道中的下一個(gè)階段。指定的字段可以是輸入文檔中的現(xiàn)有字段或新計(jì)算的字段。

這個(gè)表達(dá)式取消“_id”字段并連接“actor”集合中的“first_name”和“l(fā)ast_name”字段。

{ _id: 0, full_name : { $concat: ["$first_name", ", ", "$last_name"] } }

你可以通過(guò)點(diǎn)擊“腳本預(yù)覽”選項(xiàng)卡查看 Navicat 生成的代碼:

db.createView("Untitled","actor",[

{

$project: {

_id: 0,

"full_name": {

$concat: [

"$first_name",

", ",

"$last_name"

]

}

}

}

])

若要查看新視圖,請(qǐng)點(diǎn)擊“預(yù)覽”按鈕或“結(jié)果”選項(xiàng)卡:

保存視圖后,Navicat 將運(yùn)行上述“db.createView”命令。聚合管道保存在“system.views”集合中。對(duì)于每個(gè)創(chuàng)建的視圖,新文檔也會(huì)保存在“system.views”集合中。

預(yù)告

現(xiàn)在我們已經(jīng)掌握了基礎(chǔ)知識(shí),在下一篇文章中,我們將學(xué)習(xí)集合。

總結(jié)

以上是生活随笔為你收集整理的用mongo实现mysql视图_浅谈 MongoDB 的视图的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。