我一直在搜索博客文章或功能矩阵,通过JSON功能比较MySQL和PostgreSQL。我找到了一个很好的feature matrix for Postgres但不是MySQL。还有一些像this这样的帖子比较两者但是过时和/或没有真正详细。 到目前为止,我只发现两者都可以使用JSONB数据类型保存数据,能够在JSON中的字段上编制索引以提高查询性能,并且可以在这些字段上进行全文搜索。但不是有多好,有什么缺点。 什么是支持MySQL而不是Postgres的决定性因素,反之亦然,因为他们的JSON搜索功能呢?
(这个问题是在MySQL 5.7和PostgreSQL 9.6是当前版本时发布的;这种情况很快就会发生变化,所以读者应该记住这一点。)
答案 0 :(得分:9)
支持MySQL而不是Postgres的决定性因素是什么,反之亦然 他们的JSON搜索功能?
嗯,postgresql JSONB有几个函数可以返回rows
,而mysql最多只能返回数组,这个理由足以坚持postgresql而不是mysql。
如果您认为,mysql可以从JSON返回行,请在10月份回答这个问题,但仍未回复:Convert JSON array in MySQL to rows
Mysql并不像postgresql那样擅长子查询,但JSON功能限制了你对其他表执行连接的能力。相比之下,postgresql有whole heap of functions可以返回行。