gpt4 book ai didi

django - JSONField 和 ArrayField 的区别

转载 作者:行者123 更新时间:2023-12-03 21:59:11 24 4
gpt4 key购买 nike

下面的案例

[{type: x, val: y}, {...}, {...}, ...]

可以单独用 JSONField 表示。

还有下面的案例
[1,2,3,4,5]

可以用 JSONField 表示。

那么使用 ArrayField 有什么意义呢?

我假设 JSONField 涵盖了 ArrayField 的所有情况是否正确?

最佳答案

不,你的假设是不正确的。您可以创建 PostgreSQL 支持的任何类型的 PostgreSQL 数组,但 JSON 仅支持字符串、整数、浮点数、 bool 值、JavaScript 样式的对象和数组。

例如,您可以创建一个时间戳或日期数组,但要将这些类型存储在 JSON 中,您需要将它们转换为字符串(有时是数字)并存储这些字符串。然后,如果您需要使用时间函数或运算符,则必须从 JSON 数组中挖掘字符串,将它们转换为时间戳或日期,最后应用函数或运算符。

对于所有其他 data types that PostgreSQL 也是如此了解 JSON 没有。

array functions and operatorsJSON (array) functions and operators是可比较的,但数据类型不是。

关于django - JSONField 和 ArrayField 的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60663426/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com