• blackstrat@lemmy.fwgx.uk
    link
    fedilink
    arrow-up
    6
    ·
    4 months ago

    I’m no expert in JSON, but don’t you lose the ability to filter it before your application receives it all? If you had a reasonable amount of data then in SQL you can add WHERE clause and cut down what you get back so you could end up processing a lot less data than in your JSON example, even with the duplicated top table data. Plus if you’re sensible you can ensure you’re not bringing back more fields than you need.

    • ShawiniganHandshake@sh.itjust.works
      link
      fedilink
      arrow-up
      1
      ·
      4 months ago

      Postgres has JSON operators you can put into expressions, including WHERE clauses. You can write queries like:

      SELECT item_details->‘manufacturer’->‘location’ FROM inventory WHERE item_details->‘material’ = “concrete”;

      Storing data in JSON columns has other trade-offs, though.

    • Ephera@lemmy.ml
      link
      fedilink
      arrow-up
      1
      ·
      4 months ago

      In a traditional SQL database, yeah. In various document-oriented (NoSQL) databases, though, you can do that.