在MySQL 5.7中,新的数据类型用于在JSON表中存储JSON数据。
添加。 显然,这将是MySQL的巨大变化。 他们列出了一些好处
Document Validation - Only valid JSON documents can be stored in a
JSON column, so you get automatic validation of your data.
Efficient Access - More importantly, when you store a JSON document in a JSON column, it is not stored as a plain text value. Instead, it is stored
in an optimized binary format that allows for quicker access to object
members and array elements.
Performance - Improve your query
performance by creating indexes on values within the JSON columns.
This can be achieved with"functional indexes" on virtual columns.
Convenience - The additional inline syntax for JSON columns makes it
very natural to integrate Document queries within your SQL. For
example (features.feature is a JSON column): SELECT feature->"$.properties.STREET" AS property_street FROM features WHERE id = 121254;
哇 ! 它们包括一些很棒的功能。 现在,更容易操作数据。 现在可以在列中存储更复杂的数据。
因此,MySQL现在具有NoSQL的味道。
现在我可以想象对JSON数据的查询类似
SELECT * FROM t1
WHERE JSON_EXTRACT(data,"$.series") IN
(
SELECT JSON_EXTRACT(data,"$.inverted")
FROM t1 | {"series": 3,"inverted": 8}
WHERE JSON_EXTRACT(data,"$.inverted")<4 );
那我可以在几个json列中存储巨大的小关系吗? 好吗? 它破坏规范化了吗? 如果可能的话,我想它会像MySQL列中的NoSQL一样。 我真的很想了解更多有关此功能的信息。 MySQL JSON数据类型的优缺点。
哦,请不要说我想你在说什么。在这里,阅读。您的又一个坏主意。
@德鲁你给了一个很大的答案。但这不是我的问题。我只想知道,如果我们为json数据编写查询,那么我们可能会跳过sql规则。因为我们不需要很多桌子
您说Now it is possible to store more complex data in column。小心