Comment obtenir la valeur des données jsonb en utilisant uniquement l'identifiant du numéro de clé ?

idem

J'ai une colonne jsonb avec les données suivantes :

{"oz": "2835", "cup": "229", "jar": "170"}

J'ai le numéro de clé 0qui représente le premier élément "oz". Comment puis-je extraire cette valeur en utilisant le 0?

Je pense à quelque chose de similaire à :

SELECT units->[0] as test

Je n'ai que l'ID de clé pour référencer ces données. Je n'ai pas le nom de clé "oz".

jjanes

Cela ressemble à une idée horrible. Mais vous pouvez toujours créer une fonction pour implémenter cette horrible idée :

create function jsonb_disaster(jsonb,int) returns jsonb language SQL as $$ 
    select value from jsonb_each($1) with ordinality where ordinality=1+$2
$$;


select jsonb_disaster('{"oz": "2835", "cup": "229", "jar": "170"}',0);
 jsonb_disaster 
----------------
 "2835"

Vous pouvez également créer votre propre opérateur pour conclure cette catastrophe :

create operator !> ( function = jsonb_disaster, leftarg=jsonb, rightarg=int);

select '{"cup": "229", "jar": "170", "oz": "2835"}' !> 1;
 ?column? 
----------
 "229"

Cet article est collecté sur Internet, veuillez indiquer la source lors de la réimpression.

En cas d'infraction, veuillez [email protected] Supprimer.

modifier le
0

laisse moi dire quelques mots

0commentaires
connexionAprès avoir participé à la revue

Articles connexes

TOP liste

  1. 1

    Microsoft.WebApplication.targets

  2. 2

    Exporter la table de l'arborescence vers CSV avec mise en forme

  3. 3

    Spring @RequestParam DateTime format comme ISO 8601 Date Heure facultative

  4. 4

    Comment analyser un hachage Ruby plat en un hachage imbriqué?

  5. 5

    Passer la taille d'un tableau 2D à une fonction ?

  6. 6

    Comment créer une nouvelle application dans Dropbox avec des autorisations complètes

  7. 7

    Algorithme: diviser de manière optimale une chaîne en 3 sous-chaînes

  8. 8

    Laravel SQLSTATE [HY000] [1049] Base de données inconnue 'previous_db_name'

  9. 9

    comment supprimer "compte de connexion google" à des fins de développement - actions sur google

  10. 10

    php ajouter et fusionner des données de deux tables

  11. 11

    Créer un système Buzzer à l'aide de python

  12. 12

    Existe-t-il un moyen de voir si mon bot est hors ligne ?

  13. 13

    Comment changer la couleur de la police dans R?

  14. 14

    Déplacement des moindres carrés d'ajustement pour les déplacements de points ayant des problèmes

  15. 15

    impossible d'obtenir l'image d'arrière-plan en plein écran dans reactjs

  16. 16

    Comment vérifier si un utilisateur spécifique a un rôle? Discord js

  17. 17

    comment afficher un bouton au-dessus d'un autre élément ?

  18. 18

    Comment choisir le nombre de fragments et de répliques Elasticsearch

  19. 19

    Comment ajouter une entrée à une table de base de données pour une combinaison de deux tables

  20. 20

    optimiser les opérations du serveur avec elasticsearch: traitement des filigranes de disque bas

  21. 21

    Comment analyser un fichier avec un tableau d'objets JSON en utilisant Node.js?

chaudétiquette

Archive