现有表table1和table2
table1表中有4个字段:id,A端,Z端,波道电路
id A端 Z端 波道电路
111205102339182399 OuHaiBian_CW_S_015/shelf1/s1/p7-8/A TangLingBian_CW_S_013/s17/p7-8/B MSTP-10G-TaiZhou-WenZhou-58.98,MSTP-10G-TangLingBian-OuHaiBian-60.61,MSTP-10G-TaiZhou-WenZhou-59.79
……
table2是关于table1表中A端,Z端,波道电路的拼音汉子对应表;
station 局站
OuHaiBian 瓯海变
TangLingBian 塘岭变
……现在要将table1表中的拼音全部转换成汉子,怎么实现?
table1表中有4个字段:id,A端,Z端,波道电路
id A端 Z端 波道电路
111205102339182399 OuHaiBian_CW_S_015/shelf1/s1/p7-8/A TangLingBian_CW_S_013/s17/p7-8/B MSTP-10G-TaiZhou-WenZhou-58.98,MSTP-10G-TangLingBian-OuHaiBian-60.61,MSTP-10G-TaiZhou-WenZhou-59.79
……
table2是关于table1表中A端,Z端,波道电路的拼音汉子对应表;
station 局站
OuHaiBian 瓯海变
TangLingBian 塘岭变
……现在要将table1表中的拼音全部转换成汉子,怎么实现?
解决方案 »
- 新手请教:oracle存储过程 输入表名,返回dataset
- 各位好,下面这个语句在如果去掉最外面一层group by很快,加上则很慢,大侠们帮忙分析一下,谢谢
- 批量插入的问题
- 毕业设计用到的一个存储过程求高手帮忙
- 关于图片
- ORCALE д?EMP ?вenameе??,
- 关于10g left join 的新写法
- sqlplus的一个问题
- SQL SERVER 中的CASE THEN ELSE在ORACLE里怎么写?
- 连接到数据库以后,如何列出所有的表呢?sql语句能做到吗?
- Oracle工具 - Oracle SQL Handler - 好用又实用,支持 Linux ,免装 Oracle 客户端
- oracle游标 抓狂问题
SELECT REGEXP_REPLACE('OuHaiBian_CW_S_015/shelf1/s1/p7-8/A','[a-zA-Z]{5,}Bian','瓯海变电站') FROM DUAL;
SELECT REGEXP_REPLACE('TangLingBian_CW_S_013/s17/p7-8/B','[a-zA-Z]{8,}Bian','塘岭变电站') FROM DUAL;
SELECT REGEXP_REPLACE('MSTP-10G-TaiZhou-WenZhou-58.98,MSTP-10G-TangLingBian-OuHaiBian-60.61,MSTP-10G-TaiZhou-WenZhou-59.79','[a-zA-Z]{8,}Bian','塘岭变电站') FROM DUAL;REGEXP_REPLACE('OUHAIBIAN_CW_S_015/SHELF1/S1/P7-8/A','[A-ZA-Z]{5,}BIAN','瓯海变电站')
--------------------------------------------------------------------------------
瓯海变电站_CW_S_015/shelf1/s1/p7-8/A REGEXP_REPLACE('TANGLINGBIAN_CW_S_013/S17/P7-8/B','[A-ZA-Z]{8,}BIAN','塘岭变电站')
-----------------------------------------------------------------------------
塘岭变电站_CW_S_013/s17/p7-8/B REGEXP_REPLACE('MSTP-10G-TAIZHOU-WENZHOU-58.98,MSTP-10G-TANGLINGBIAN-OUHAIBIAN-60.61,MSTP-10G-TAIZHOU-WENZHOU-59.79','[A-ZA-Z]{8,}BIAN','塘岭变电站')
------------------------------------------------------------------------------------------------------------------------------------------------
MSTP-10G-TaiZhou-WenZhou-58.98,MSTP-10G-塘岭变电站-OuHaiBian-60.61,MSTP-10G-TaiZhou-WenZhou-59.79
select replace(t1.A端,t2.拼音,t2.汉字) from table1 t1,table t2;
select replace(t1.A端,t2.拼音,t2.汉字) from table1 t1,table t2 where instr(t1.A端,t2.拼音) > 0;
如果有多个...那还真没什么好办法,只能多层嵌套一下...但是如果你要的是update语句的话,可以多执行几次..那就能全部替换了..