J'ai un champ avec la valeur dans un tableau comme ci-dessous (deux enregistrements).
| field
|--------------------------------------------------------------------------------
| [{"id":"8a688d70-d881-11ea-b999-3b32356f3dce","supplierName":"t1"},{"id":"8a688d70-deeq-3221-cdee-3b32356f3dc1","supplierName":"t2"]
|--------------------------------------------------------------------------------
| [{"id":"8a688d70-323s-11ea-2123-3b32356f1111","supplierName":"t3"}]
|--------------------------------------------------------------------------------
| ...
Quand j'utilise le SQL
select substring(field1, 9, 36)
FROM table
Je reçois les disques
8a688d70-d881-11ea-b999-3b32356f3dce
8a688d70-323s-11ea-2123-3b32356f1111
Maintenant, y a-t-il un moyen d'obtenir toute la valeur d'identifiant dans un enregistrement? REMARQUE, peut-être qu'un enregistrement avait plusieurs valeurs d'identifiant. Le résultat idéal devrait être comme ci-dessous.
|————————————————————————————————————————————————————————————————————————————
|8a688d70-d881-11ea-b999-3b32356f3dce, 8a688d70-deeq-3221-cdee-3b32356f3dc1
|————————————————————————————————————————————————————————————————————————————
|8a688d70-323s-11ea-2123-3b32356f1111
|————————————————————————————————————————————————————————————————————————————
Utilisation JSON_EXTRACT
de mySql.
SELECT JSON_EXTRACT(field, "$[*].id") AS field FROM table
Cet article est collecté sur Internet, veuillez indiquer la source lors de la réimpression.
En cas d'infraction, veuillez [email protected] Supprimer.
laisse moi dire quelques mots