如果有一个字段,contact联系信息,存储的是一个json,如[{"orderId": 0, "city": "2076", "type": 2, "number": "13621934227"}] 需要取其中的number,用mysql的函数可以select吗?当然我也可以放在程序里解析

解决方案 »

  1.   

    可以通过 INSTR找到"number": ",然后再找到下一个“,之后MID取出13621934227。
      

  2.   

    如果放在MYsql里做很费时的话,我还是放在程序里做吧
      

  3.   


    mysql> set @a='[{"orderId": 0, "city": "2076", "type": 2, "number": "13621934227"}]';
    Query OK, 0 rows affected (0.00 sec)mysql> select replace(mid(@a,instr(@a,"number")+10),'"}]','');
    +-------------------------------------------------+
    | replace(mid(@a,instr(@a,"number")+10),'"}]','') |
    +-------------------------------------------------+
    | 13621934227                                     |
    +-------------------------------------------------+
    1 row in set (0.00 sec)