Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Extraia dados do json dentro do campo mysql


MySQL tem suporte para JSON na versão 5.7.7http://mysqlserverteam.com/json-labs-release-native-json-data-type-and-binary-format/ Você poderá usar a função jsn_extract para analisar eficientemente sua string JSON.

Se você tem uma versão mais antiga e deseja resolvê-la puramente no mysql, temo que você tenha que tratá-la como uma string e cortar o valor dela (apenas funções de string normais ou usar expressões regulares) Isso não é elegante, mas é vai funcionar

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