我运行以下查询:
select * from my_temp_table 得到这个输出:
PNRP1 1-109/RT PNRP1 1-200-16 PNRP1 1-209/PG 013555366-IT
如何更改查询以从每个值中删除最后两个字符?
发布于 2015-03-06 20:50:12
使用SUBSTR()函数。
SELECT SUBSTR(my_column, 1, LENGTH(my_column) - 2) FROM my_table;发布于 2015-03-06 21:41:31
另一种使用正则表达式的方法:
select regexp_replace('PNRP1-109/RT', '^(.*).{2}$', '\1') from dual;这将用正则表达式中的组1替换字符串,其中组1(在父表达式中)包含行开始后的字符集,而不包括行尾之前的两个字符。
虽然你的例子不那么简单,但可以说更强大。
https://stackoverflow.com/questions/28907292
复制相似问题