写点什么

Studio 3T:MongoDB SQL 探究

  • 2018-06-14
  • 本文字数:983 字

    阅读完需:约 3 分钟

对于用户而言,能够直接查询和研究数据长期以来一直是专业数据库的标志。借助供应商提供的工具和对 SQL 的基本了解,用户可以查询任何类型的数据,而不必针对特定的产品参加严格的培训。我们所说的 NoSQL 数据库是其中一个特例。由于每一种 NoSQL 数据库都有自己专门的语法,所以培训成本会急剧上升。

Studio 3T 旨在通过提供一个基于SQL 的用户界面解决这个问题。其用户界面看上去和SQL Server Management Studio 或PosgreSQL 的pgAdmin 非常像。它使用了标准的三面板布局,集合列表在左侧,SQL 编辑器在右上方,结果窗格在右下方。

和许多基于SQL 的工具一样,你可以直接在Studio 3T 中编辑记录。这可以用在需要手工更正数据的时候,通常,在连接到生产数据库时,用户可以把工具设置成“只读模式”,降低犯错风险。

SQL 转换成 JavaScript(node.JS)、Java、Python 和 C#代码

Studio 3T 有一个独一无二的特性,就是能够把SQL 转换成特定语言的代码。在确认查询有效之后,你就可以切换到“Query Code”页签,看下这段代码在JavaScript(node.JS)、Java、Python 或C#中是什么样子。除了可以作为一款实用的培训工具外,这还可以节省执行冗长的集成测试所需的大量时间。

使用这项特性的开发人员应该充分利用“解释查询”支持。和其他数据库引擎一样,这可以为你提供有关查询预期性能特征的重要信息。

MongoDB 连接

Studio 3T 经常添加新特性,其中,在最近的更新中就增加了在 MongoDB 数据集上执行SQL 风格的内连接和左连接的能力。

这些连接是以MongoDB 的原生查询语言来表示的,使用了$lookup 操作符。这对SQL 实现有些限制。虽然支持多连接,但是每个连接只能引用左边的表。或者换句话说,不支持右连接。类似地,也不能使用全连接。

其他SQL 特性

Studio 3T 的 SQL 支持还包括:

  • GROUP BY、ORDER BY 和聚合函数;
  • Limit 和 Offset(也就是数据分页);
  • 使用 LIKE 时的通配符;
  • 使用 IN 测试一个值是否是一个集合的成员;
  • 使用 BETWEEN 测试一个值是否处于某个范围内;
  • 使用点分隔的名称访问嵌套字段。

最后一项特性让你可以使用标准 OOP 风格的点表示法读取子字段。例如,可以使用“address.zip_code”读取邮政编码。和许多数据库引擎一样,字段名可以放在括号或双引号中。单引号用于字符串常量。

SQL Query 和 Query Code 生成只有 Studio 3T 专业版才提供。

查看英文原文: Studio 3T: SQL Exploration for MongoDB

2018-06-14 09:572960
用户头像

发布了 1008 篇内容, 共 426.2 次阅读, 收获喜欢 346 次。

关注

评论

发布
暂无评论
发现更多内容

程序员• 后浪

古时的风筝

程序员 后浪

深入浅出虚拟内存

泰伦卢

c c++ C#

时间足够爱你

rmrf

学习 思考 持之以恒

MacOS高效使用指南-我的体系化方案以及软件清单

lmymirror

高效工作 效率工具 知识管理 Mac 操作系统

go 怎样做 stw

huizhou92

Go 语言

C++ sqlite3使用指南

泰伦卢

c c++ C#

Netty 源码解析(八): 回到 Channel 的 register 操作

猿灯塔

Java并发编程基础--Java内存模型

Java收录阁

架构师快问快答2

IT民工大叔

C++中glog源码剖析以及如何设计一个高效 log模块

泰伦卢

c c++ C#

游戏开发通用技术和工具

波波

编程 游戏开发 H5游戏

Redis学习笔记(列表类型)

编程随想曲

redis

回"疫"录(10):危机与希望

小天同学

疫情 回忆录 现实纪录 纪实

关于 WordPress-Automatic 的分布式办公实践

刘培培

分布式办公 远程办公

原创 | 使用JUnit、AssertJ和Mockito编写单元测试和实践TDD (三)单元测试在整个测试体系中的位置

编程道与术

软件测试 TDD 单元测试 集成测试 验收测试

Java并发编程--ReentrantLock

Java收录阁

并发编程

理解go 的 sort

huizhou92

Go 语言

未完成乞丐版 Args

escray

学习 CSD 认证实战营

无所不能 就像妈妈一样

Neco.W

思考 情绪

每日算法之leetcode 50 Power

田镇珲

递归 LeetCode 分治

作为自由职业者,我的近况

一尘观世界

程序员 自由职业 复盘

DDD 实践手册(5. Factory 与 Repository)

Joshua

企业架构 设计模式 领域驱动设计 DDD 架构模式

数据湖引擎是什么鬼

数据社

大数据 数据仓库 数据湖 数据架构

工作感悟随笔

程序员小岑

感悟

聊聊Redis SDS

huizhou92

redis

和孩子聊聊死亡

陈医僧Ethan

感悟 育儿

电脑城最简单骗局,仍然有无数人上当

周三不加班

电脑城 电脑选购

程序员《后浪》-图文版

Java_若依框架教程

后浪 程序媛 娱乐

想看懂stl代码,先搞定type_traits是关键

泰伦卢

c c++ C#

Web百度离线地图开发

玏佾

WebGIS 离线地图 Web离线地图

自助设备系列——增长点

孙苏勇

产品 行业资讯 智能设备

Studio 3T:MongoDB SQL探究_Java_Jonathan Allen_InfoQ精选文章