事例如下:
这是为什么呢?
这是为什么呢?
解决方案 »
- 求助神人关于启动OracleDBConsoleorcl和oem的错误解决方法
- 将B表结果插入A表,如果A存在则将A中的一个字段值加1,不存在则插入新纪录
- oracle安装问题(redhat5.3 + oracle10g)
- 急寻数据库处理速度慢的解决办法...
- 异构环境的数据库性能调优
- 不定行转列的问题,向各位大侠请救,不胜感激,在线等……
- 查询某一字段最小、最大的记录
- 兄弟们。提问一个 可笑的基础知识
- 请问,如何在Oracle中选择前多少条记录阿?类似SQL Server中的select top 100 * from ....
- .net连接oracle的问题
- plsql过程问题,如何将一个索引表插入到对应的表中,
- 散分!!!
update PROVINCE_WINNING_PRIZE set area=trim(area) 无法删除多余的空间,或者说不是空格
Select area, '''' || area || '''' from ....
用这个看一下是不是有什么咱们肉眼看不到的东西。
却无法删除空格吗???
我想不是空格..
你都作了什么操作呢?
选出的时候,用了什么SQL呢?
数据库会保存TEXTAREA里面回车之类的东西的,
而你用select出来眼睛是看不到的。
我怎么样才能把它变回真正我想来的数呢
看看是些什么字符
执行 select dump(area,17) from ( select distinct area from PROVINCE_WINNING_PRIZE ) 返回的结果是
Typ=1 Len=10: 0,1,^@,^@,^@,^@,^@,^@,^@,^@
结果是
Typ=1 Len=10: 48,49,0,0,0,0,0,0,0,0
那replace()该怎么写??俺这样写
update PROVINCE_WINNING_PRIZE set area=REPLACE(AREA, ASCII(0),'') where length(area)=10
update PROVINCE_WINNING_PRIZE set area=trim(area)
可还是不行
update PROVINCE_WINNING_PRIZE set area=REPLACE(area,'^@','') where length(area)=10也一样不行
Typ=1 Len=10: 30,31,0,0,0,0,0,0,0,0
你只能找找规律, 再用 类似于 where AREA LIKE '01%' 的方法来清洗数据了
UPDATE ... SET AREA = REPLACE(AREA, CHR(0 USING NCHAR_CS), '')
试试看