MongoDB Connector For BI 允许你以关系型数据库连接mongodb,供BI分析之类的工具读取分析数据,它并不存储数据,仅仅只作为一个数据库查询的转换桥梁。
- mongodrdl 生成 DRDL文件, 用于映射collection的表结构
- mongosqld 实际的转换器,启动时至少需要一个DRDL文件(或者指定DRDL所在的文件夹)。
下载:https://www.mongodb.com/download-center/bi-connector
文档:https://docs.mongodb.com/bi-connector/master/
支持SQL:https://docs.mongodb.com/bi-connector/master/supported-operations/
新版至少兼容SQL-99 SELECT查询,支持所有常用的SQL查询操作。
# 导出mytest库下aaa表的结构
.\mongodrdl.exe --host localhost --port 27017 --db mytest -c aaa --out demo.drdl
# 映射此结构
.\mongosqld.exe --schema .\demo.drdl
使用MySql客户端 SQLyog V13.1
SELECT
b.`概览-简要基本情况.注册中文名称`,
a.*
FROM
(SELECT
_id,
SUM(
CAST(
`发行人基本情况-前十股东.股东持股比例` AS DECIMAL
)
) AS cnt,
MAX(
CAST(
`发行人基本情况-前十股东.股东持股比例` AS DECIMAL
)
) AS ma,
MIN(
CAST(
`发行人基本情况-前十股东.股东持股比例` AS DECIMAL
)
) AS mi,
AVG(
CAST(
`发行人基本情况-前十股东.股东持股比例` AS DECIMAL
)
) AS av
FROM
`zg_发行人基本情况-前十股东`
WHERE `发行人基本情况-前十股东_idx` < 3
GROUP BY _id) a
JOIN
(SELECT
*
FROM
`zg_概览-简要基本情况`) b
ON a._id = b._id;