QCon 演讲火热征集中,快来分享技术实践与洞见! 了解详情
写点什么

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:572691
用户头像

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

关注

评论

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

第一周作业

阿呆

架构师训练营第 1 期第 5 周学习总结

owl

极客大学架构师训练营

牛逼的程序员,都长什么样?

田维常

程序员 牛逼

架构师训练营第 1 期 - 第五周作业提交

Todd-Lee

极客大学架构师训练营

一致性哈希算法 Java 实现

escray

极客大学 极客大学架构师训练营 课程作业

只争朝夕乘势上,不负韶华开新局——区块链上升为国家战略今日迎来一周年

CECBC

区块链 数字经济

手把手教你理解决策树:从概念到应用

计算机与AI

Python 学习 决策树

年薪50万开发者相亲失败:程序员,别输在不会说话上

田维常

程序员 好好说话 不会说话

面试官角度,聊聊写简历这事

田维常

程序员 面试

云南区块链布局

CECBC

区块链 大数据

第五周作业

极客大学架构师训练营

架构师第一周作业

丁乐洪

第一周学习总结

Alvin

学习 极客大学架构师训练营 2组

架构师训练营第 1 期 - 第五周总结

Todd-Lee

极客大学架构师训练营

第5周 技术选型(一)总结

bearlu

朋友被“卖”了两次:程序员,真的别去外包公司!

田维常

程序员 外包 外包公司

架构师训练营第五周学习总结

Gosling

极客大学架构师训练营

第四周作业

橘子皮嚼着不脆

第01周学习总结[架构师训练营第 2 期]

Airship

极客大学架构师训练营

技术是否要追新?基于4点判断谈谈4点认识

田维常

程序员 技术 最新 技术追新

程序员是不是青春饭?年纪大了何去何从

田维常

程序员 青春饭

食堂就餐卡系统设计

Sandman

极客大学架构师训练营 作业

【第五周】技术选型(一)

云龙

第一周学习总结

CraspLion

架构师训练营第五周课后作业

Gosling

极客大学架构师训练营

【建议收藏】18个适合程序员的在线学习网站,每个我都帮您试过了

田维常

学习 程序员 成长 网站

Spring Boot 过滤器、监听器、拦截器的使用

田维常

程序员 过滤器 拦截器

Raft算法之快照篇

心平气和

raft 快照

数字人民币将如何改变金融生态?

CECBC

数字人民币

极客时间架构师培训 1 期 - 第 5 周作业

Kaven

【原创】90%的人都不会做的一道笔试题

田维常

程序员 面试

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