假如有表 userinfo有个字段
id     address
1      省:四川;市:成都;县:XX;邮编:61000
2      省:黑龙江;县:未知;邮编:20000我想查询得到:
id     post
1      61000
2      20000如何操作?

解决方案 »

  1.   

    select id,SUBSTRING_INDEX('省:黑龙江;县:未知;邮编:20000', '邮编:', -1) as post;
      

  2.   

    select id,SUBSTRING_INDEX(post, '邮编:', -1) as post from userinfo ;
      

  3.   


    mysql> select SUBSTRING_INDEX(SUBSTRING_INDEX('省:黑龙江;县:未知;邮编:20000', '
    县:', -1),';',1);
    +-------------------------------------------------------------------------------
    ----+
    | SUBSTRING_INDEX(SUBSTRING_INDEX('省:黑龙江;县:未知;邮编:20000', '县:', -1),';'
    ,1)                 |
    +-------------------------------------------------------------------------------
    ----+
    | 未知
          |
    +-------------------------------------------------------------------------------
    ----+
    1 row in set (0.00 sec)mysql>你查查SUBSTRING_INDEX的用法。
      

  4.   

    如果格式固定
    select id,SUBSTRING_INDEX('省:黑龙江;县:未知;邮编:20000', '邮编:', -1) as post;
    select SUBSTRING_INDEX(SUBSTRING_INDEX('省:黑龙江;县:未知;邮编:20000', '
    县:', -1),';',1);