2017-01-03 81 views
5

我一直在寻找一篇博客文章或功能矩阵,它通过JSON功能比较MySQL和PostgreSQL。我发现一个好的feature matrix for Postgres但不适用于MySQL。还有一些像this这样的帖子比较两个,但过时和/或不是很详细。 到目前为止,我只发现可以使用JSONB数据类型保存数据,能够在JSON中的字段上进行索引以提高查询性能,并且可以在这些字段上进行全文本搜索。但不是那么好,有什么缺点。 什么是决定性因素,以支持MySQL优于Postgres,反之亦然,因为他们的JSON搜索功能?MySQL vs PostgreSQL JSON搜索功能

(此问题被张贴当MySQL 5.7和PostgreSQL 9.6是当前版本,这样的事情变化很快所以后来的读者应该记住这一点。)

+1

好问题,但可能会关闭任何第二太宽,并导致主观答案。这在过去曾经是一个有效的问题风格,但是现在的调节意味着你可能会失望,即使这是2017年的一个很好的问题。 –

+0

@VanquishedWombat因此试图将你的评论标记为“不具有建设性”只是为了调整你:P,但老实说,我认为这是足够具体,是非常有用的。不知道任何这样的资源,我有兴趣亲自看看他们。 –

+0

@CraigRinger - 它的SO的演变的烦恼之一。如果你寻找类似的问题关于C vs C#你会发现允许生活和生成真正有用的输入的问题。但是,如果您要求他们被关闭为主观/非主题/太宽泛,那么您会被击落。看起来SO的内容变得陈旧,对新技术的用处不大。如果你考虑技术的使用周期,它总是从开放的问题开始,随着时间的推移,问题会变得更具体。主持人似乎不明白这一点。虽然我可能还没吃我的帽子。 –

回答

3

什么是有利于MySQL的一个决定因素通过Postgres,反之亦然 为他们的JSON搜索功能?

好,PostgreSQL所JSONB事实有几个功能,可以返回rows而MySQL的充其量只能返回数组足够的理由坚持到PostgreSQL,而不是MySQL的。

如果你认为,MySQL能够从JSON返回行请回答来自十月这个问题,这仍然没有答案:Convert JSON array in MySQL to rows

MySQL是不是子查询的PostgreSQL的那么好,但JSON功能限制你的能力来执行联接对其他表格。相比之下,postgresql有一个whole heap of functions可以返回行。