字符串的截取!

想要截取出省、市区、县,但是有的地区是自治区还有没有填省份的直接填市区的,想分开截取该怎么写!

在线等,挺急的!

年年 发布于 2020-11-3 14:26 (编辑于 2020-11-3 14:28)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
仇长俊Lv6初级互助
发布于2020-11-3 14:41(编辑于 2020-11-3 15:48)

CASE WHEN  满足条件(比如   like '%省%')

then

substr(籍贯) (根据条件截取位数)

WHEN

条件

then

截取

...

end

图片.png

  • 年年 年年(提问者) 加select该怎么写
    2020-11-03 15:44 
  • 年年 年年(提问者) select b.name 籍贯 CASE WHEN b.name LIKE \'%省%\' THEN substr( b.name, 1, instr( b.name, \'省\', 1 ) ) WHEN b.name LIKE \'%自治区%\' OR b.name LIKE \'%行政区%\' THEN substr( b.name, 1, instr( b.name, \'区\', 1 ) ) WHEN b.name NOT LIKE \'%省%\' AND b.name NOT LIKE \'%自治区%\' AND b.name NOT LIKE \'%行政区%\' AND b.name LIKE \'%市%\' THEN substr( b.name, 1, instr( b.name, \'市\', 1 ) ) END 地区 from bd_psndoc a left join bd_region b on a.nativeplace =b.pk_region 这样写会报错
    2020-11-03 15:45 
  • 仇长俊 仇长俊 回复 年年(提问者) 上面的语句其实就是一个字段啊, select -- 省份 CASE WHEN 满足条件(比如 like \'%省%\') then substr(籍贯) (根据条件截取位数) WHEN 条件 then 截取 ... end , -- 城市 CASE WHEN 满足条件(比如 like \'%省%\') then substr(籍贯) (根据条件截取位数) WHEN 条件 then 截取 ... end 城市 ... from 表名称
    2020-11-03 15:46 
  • 仇长俊 仇长俊 回复 年年(提问者) 你的逗号呢
    2020-11-03 15:47 
  • 仇长俊 仇长俊 回复 年年(提问者) 看我修改的截图
    2020-11-03 15:49 
最佳回答
0
shirokoLv6资深互助
发布于2020-11-3 14:29

中国省一共那么几个吧。。除了xx省以外直接匹配吧

  • 年年 年年(提问者) ???
    2020-11-03 14:50 
  • shiroko shiroko 回复 年年(提问者) 首先截掉xx省,作为省,然后查看有没有上海市、xx自治区这种,也截掉作为省。然后剩下的截取市和县。具体写起来可能很长
    2020-11-03 14:53 
最佳回答
0
先知Lv5见习互助
发布于2020-11-3 16:31

看著簡單,操作難

  • 年年 年年(提问者) 一级城市查出来了,二级三级就不会写了
    2020-11-03 21:22 
  • 3关注人数
  • 567浏览人数
  • 最后回答于:2020-11-3 16:31
    请选择关闭问题的原因
    确定 取消
    返回顶部