sql >> Database >  >> RDS >> Mysql

Gegevens extraheren uit json in het mysql-veld

MySQL heeft ondersteuning voor JSON in versie 5.7.7http://mysqlserverteam.com/json-labs-release-native-json-data-type-and-binary-format/ U kunt de functie jsn_extract gebruiken om uw JSON-tekenreeks efficiënt te ontleden.

Als je een oudere versie hebt en je wilt het puur in mysql oplossen, dan ben ik bang dat je het als een string moet behandelen en de waarde eruit moet halen (gewoon normale stringfuncties of reguliere expressies gebruiken) Dit is niet elegant, maar het is zal werken

http://sqlfiddle.com/#!9/97cfd/14

SELECT
  DISTINCT(substring(jsonfield, locate('"city":',jsonfield)+8,
     locate('","', jsonfield, locate('"city":',jsonfield))-locate('"city":',jsonfield)-8)
  )
FROM
  ForgeRock


  1. Hoe kan ik de rij met de hoogste ID selecteren in MySQL?

  2. blob omzetten in clob

  3. Hoe krijg ik een percentage van het totaal wanneer de zoekopdracht een GROUP BY heeft?

  4. Gegevens laden van een tekstbestand naar een tabel in oracle