年年(提问者)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
这样写会报错
仇长俊 回复 年年(提问者)上面的语句其实就是一个字段啊,
select
-- 省份
CASE WHEN 满足条件(比如 like \'%省%\')
then
substr(籍贯) (根据条件截取位数)
WHEN
条件
then
截取
...
end
,
-- 城市
CASE WHEN 满足条件(比如 like \'%省%\')
then
substr(籍贯) (根据条件截取位数)
WHEN
条件
then
截取
...
end 城市
...
from 表名称