有没有我可以使用类似 sql 的语法访问 mongodb 的库。
例子
use db
select * from table1
insert into table1 values (a,b,c)
delete from table
select a,b,count(*) from table1 group by a,b
select a.field1,b.field2 from a,b where a.id=b.id
谢谢拉曼
有没有我可以使用类似 sql 的语法访问 mongodb 的库。
例子
use db
select * from table1
insert into table1 values (a,b,c)
delete from table
select a,b,count(*) from table1 group by a,b
select a.field1,b.field2 from a,b where a.id=b.id
谢谢拉曼
仅当您只执行极其简单的 sql 查询时,学习曲线才会很小。如果您的 SQL 查询范围是“从 X 中选择 *”,那么 MongoDB 看起来是一个绝妙的主意,可以切断所有过于复杂的 SQL。但是,如果您需要执行左外连接、测试空值、检查范围、子选择、分组和求和,那么在移动到 Mongo 之后,您很快就会在办公桌上留下一个圆形凹痕。病态的妙语是有一半的时间,您尝试做的事情无法在 Mongo 界面中完成。Mongo 代表了一个大胆的新世界,它不是数据库做聚合和查询优化之类的事情,它只是存储数据,所有的魔法都是通过缓慢地检索所有内容来完成的,将其存储在应用程序内存中,然后在代码中完成所有这些事情。
是的!
一家名为 UnityJDBC 的公司为 mongodb 制作了 JDBC 驱动程序。与 mongo java 驱动程序不同,此 JDBC 驱动程序允许您对 MongoDB 运行 SQL 查询,并且任何使用 JDBC 的 Java 应用程序都支持该驱动程序。
要下载此驱动程序,请访问...
http://www.unityjdbc.com/mongojdbc/mongo_jdbc.php
它也可以免费下载!
希望这可以帮助
MoSQL可能会满足您的需求。它需要您运行一个新的 PostgreSQL 实例,但您可以从那里使用 SQL 查询整个 Mongo 数据集。
“MoSQL 将 MongoDB 数据库集群的内容导入 PostgreSQL 实例,使用 oplog tailer 使 SQL 镜像保持最新。这使您可以针对 MongoDB 数据库运行生产服务,然后使用离线分析或报告SQL 的全部功能。”
有一些解决方案,但几乎所有解决方案都无法以“关系型”的 ODBC/JDBC 应用程序和用户希望/需要的方式真正代表 MongoDB 数据模型。最近发布的商业产品解决了这些挑战
ODBC: http: //www.progress.com/products/datadirect-connect/odbc-drivers/data-sources/mongodb
JDBC: http: //www.progress.com/products/datadirect-connect/jdbc-drivers/data-sources/mongodb
为满足对 ODBC/JDBC (SQL) 访问的需求...虽然使用 Mongo 的客户端编写新应用程序有强烈的论据,但市场仍然强烈需要高质量的 ODBC/JDBC 和基于 SQL 的 MongoDB 访问。这种需求主要来自依赖 ODBC/JDBC 连接并且不提供与 MongoDB 的本机集成的所有报告、分析和 BI 应用程序。
看看这个最近的项目:http ://www.mongosql.com/ 。过去几周我一直在研究它,它看起来很有希望。
对于那些质疑 SQL 对 MongoDB 的有用性的人,请考虑许多组织中大量技术不高的用户,例如业务分析师,他们可能知道 SQL,但不想跳到 JavaScript 和JSON。像 mongoSQL 这样的工具可以帮助推动 MongoDB 在组织中的采用。
免费的 NoSQL Viewer 支持将 SQL 查询转换为 MongoDB shell 语法。此外,在 SQL Viewer 中,您甚至可以使用 SQL SELECT 语句来查询 MongoDB 集合数据,而无需了解 MongoDB 查询语法。在此处查看 NoSQL 查看器www.spviewer.com/nosqlviewer.html
有几个项目正在进行中来模拟 MongoDB 的 SQL 接口。虽然它们提供了熟悉的界面,但通常应避免使用它们。它们在一个根本有缺陷的前提下运行,因为它们解析字符串并将它们转换为方法调用。
使用 MongoDB 后,您会发现使用类和方法的方法是一个更易于访问的接口,因为它的工作方式与应用程序的所有其他部分完全一样。是的,刚开始时有一个小的学习曲线,但在大多数情况下,MongoDB 中的界面可以按照您的预期工作。
Mongodb 及其当前驱动程序不支持类似 SQL 的直接语法。但是,所有操作都可以通过驱动程序特定的操作轻松完成。这是 mongodb 操作到相应 SQL 查询的简要映射:
http://www.mongodb.org/display/DOCS/SQL+to+Mongo+Mapping+Chart