sql >> Databasteknik >  >> RDS >> Mysql

Extrahera data från json inuti mysql-fältet

MySQL har fått stöd för JSON i version 5.7.7http://mysqlserverteam.com/json-labs-release-native-json-data-type-and-binary-format/ Du kommer att kunna använda funktionen jsn_extract för att effektivt analysera din JSON-sträng.

Om du har en äldre version och du vill lösa det rent i mysql så är jag rädd att du måste behandla den som en sträng och klippa värdet ur den (bara normala strängfunktioner eller använda reguljära uttryck) Det här är inte elegant men det kommer att fungera

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. Skapa tabell om den inte finns från mysqldump

  2. Varför och när ska jag använda SPARSE COLUMN? (SQL SERVER 2008)

  3. Hur lägger jag till två count(*) resultat tillsammans på två olika tabeller?

  4. MySQL och CASE WHEN med en rad värden