我试图了解您为什么要使用JSON列。是不是你懒得规范化手头的数据呢?
例如,我有一个帐户的结算信息。我可以将它存储为JSON转储,或者将其分解为列,对吗?
哪个是首选,为什么?
答案 0 :(得分:2)
通常,如果可以事先合理地知道结构,则将其标准化。
json
/ jsonb
适用于您完全控制结构,高度灵活,随时间变化等等。
如果您始终获取整个"对象",您很少更新它们等,有时也可以方便地存储非正规化的性能数据。
答案 1 :(得分:1)
我认为这取决于具体情况。
如果您有复杂的分层数据,将其拆分为表可能会变得难以处理,并且检索数据可能需要大量的连接,这会对性能产生负面影响。
另一方面,如果您需要查询数据中的特定值,将其拆分为表/列并创建所需的索引很可能会提高查询性能。