2016-10-31 8 views
0

は、私は(MySQLで)JSON文字列を持っていると私は、ID = 2名を取得したい:common_schemaでJSONから値を抽出するには?

SET @json := ' 
    { 
    "list": [ 
     {"id": "1", "name": "John"}, 
     {"id": "2", "name": "Ben"}, 
     {"id": "3", "name": "Clara"} 
     ] 
    }   
'; 
SELECT common_schema.extract_json_value(@json, '/list/name') ; 

私は「ジョン・ベン・クララ」を取得する。この方法で、それはすべての3名です。 id = 2のものはどうすれば入手できますか?中でも

は、私が試した:

SELECT common_schema.extract_json_value(@json, '/list/descendant-or-self::name[2]') ; 

をなし成功を収めて。

(Iは、MySQL 5.7を使用することはできません、私は古いバージョンを使用する必要があり、私は共通のスキーマを使用する理由です)

答えて

0

このお試しください:

SELECT common_schema.extract_json_value(@jsonを、「descendant- or-self :: list [2]/name ');

関連する問題