在线精品99_中国九九盗摄偷拍偷看_91免费版在线观看_91.app_91高清视频在线_99热最新网站

oracle如何查出某个字段带空格的数据

127次阅读
没有评论

共计 2288 个字符,预计需要花费 6 分钟才能阅读完成。

这篇文章主要为大家展示了“oracle 如何查出某个字段带空格的数据”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让丸趣 TV 小编带领大家一起研究并学习一下“oracle 如何查出某个字段带空格的数据”这篇文章吧。

问题描述:把一个表从 oracle 同步到阿里云 rds, 居然报错违反唯一键,很是诧异,然后具体查看报错的那条数据,结果如下:果真有两条。

MySQL [bidinfo] select record_id ,login_id from  meminfo.t_member_info  where  login_id= woaini1314

+———–+————-+

| record_id | login_id    |

+———–+————-+

|  15142804 | woaini1314  |

|  78124319 | woaini1314  |

+———–+————-+

2 rows in set (0.00 sec)

然后根据 id 在 oracle 中查询,发现其中一个带空格,一个不带空格,

select record_id ,login_id from  infoservice.t_member_info  where record_id in(15142804 ,78124319);

这就麻烦了,这可是用户信息,不能随便删除,猜测是用户在注册的时候,多打了个空格,然后发现登陆不上去,就从新注册了个不带空格的相同名字的用户,然而 oracle 能识别到空格,但是 mysql 识别不到空格,正好我们有会员登陆日志,经查询确实是猜想这样。那么下来怎么统计出带空格的用户的主键 record_id 呢?

具体描述:

liuwenhe   和 liuwenhe+ 空格

由于 oracle 中识别空格,以下两条 sql 查的结果不一样。

select record_id ,login_id from  t_member_info  where  login_id= woaini1314

select record_id ,login_id from  t_member_info  where  login_id= woaini1314

但是 mysql 中不识别空格,以下查询的结果是一样的。都是两条

MySQL [bidinfo] select record_id ,login_id from  meminfo.t_member_info  where  login_id= woaini1314

+———–+————-+

| record_id | login_id    |

+———–+————-+

|  15142804 | woaini1314  |

|  78124319 | woaini1314  |

+———–+————-+

2 rows in set (0.00 sec)

MySQL [bidinfo] select record_id ,login_id from  meminfo.t_member_info  where  login_id= woaini1314  +———–+————-+

| record_id | login_id    |

+———–+————-+

|  15142804 | woaini1314  |

|  78124319 | woaini1314  |

+———–+————-+

2 rows in set (0.00 sec)

问题出现了,这个 login_id 是个唯一键, oracle 中不冲突,迁移到 rds 就违反了唯一键了,

如下怎么查出 oracle 中带空格的 record_id, 以便于从 mysql 中删除带空格的违反唯一键的数据。

一:先查出有问题的 login_id(去掉空格之后的 login_id)

select count(record_id),trim(login_id)  from infoservice.t_member_info group by trim(login_id) having count(record_id) 1;

二:然后查出所有有问题的 login_id(包括带空格的和不带空格的), 放到一个临时表

create table liuwenhe.t_mmeber_info_bak as   select record_id ,login_id  from t_member_info  where trim(login_id) in (select  login from (

select count(record_id),trim(login_id) login from infoservice.t_member_info group by trim(login_id) having count(record_id) 1 ))

三:最后利用前两个步骤查出的结果求出有问题的 login_id 中带空格的那条数据的对应的 record_id.

select   record_id  from  t_mmeber_info_bak   where login_id  not  in (select trim(login_id)  from  t_mmeber_info_bak);

四:导成 txt 文件,然后利用 lord 进 mysql。

最后根据 record_id 在 mysql 中删除相应的数据,即可,

以上是“oracle 如何查出某个字段带空格的数据”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注丸趣 TV 行业资讯频道!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-07-27发表,共计2288字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)
主站蜘蛛池模板: 亚洲色成人四虎在线观看 | av网站的免费观看 | 久久精品伊人 | 欧美2区| 亚洲国产成人手机在线观看 | 国产精品青草久久福利不卡 | 国产山东熟女48嗷嗷叫 | 国产欧美va欧美va香蕉在 | 日本边添边摸边做边爱的网站 | 亚洲欧美伦理 | 无码少妇a片一区二区三区 无码少妇精品一区二区免费 | 国产在线精品一区二区在线观看 | 黄色视屏免费看 | 亚洲精品久久区二区三区蜜桃臀 | 亚洲av无码一区二区三区性色 | 国产美女自拍 | 99热久久国产精品免费看 | 亚洲欧洲自拍拍偷综合 | 日本片网址 | 日韩免费精品 | 日本人亚洲人jizz | 精精国产xxxx视频在线播放 | 色婷婷综合久久久久中文一区二区 | 国产精品久久久精品三级 | 日韩精品中文字幕视频一区 | 成人欧美s视频在线观看 | 国产成人精品人人 | 成人综合伊人五月婷久久 | 啪啪免费 | 黄色片特级 | 在厨房被c到高潮a毛片奶水 | 91精品国产91热久久久久福利 | 在线亚洲精品国产二区图片欧美 | 成人网视频免费播放 | 国产中年熟女高潮大集合 | 夹得好湿真拔不出来了动态图 | 久久伊人天堂视频网 | 日本一区二区三区免费高清 | 亚洲看片网 | 国产精片| 免费视频一区二区三区四区 |