首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SQL显式名称拖放重复项--已经去掉了空格

SQL显式名称拖放重复项--已经去掉了空格
EN

Stack Overflow用户
提问于 2017-06-20 14:46:19
回答 4查看 91关注 0票数 1

编辑: vax提供的解决方案是成功的,应该适用于几乎所有面临类似问题的人,因为它取代了4种不同类型的间距,而不仅仅是空格。感谢所有提供帮助的人!

我有一个给出行业名称的表,但是对于其中一个列,不同的值有重复的值。

下面是我的查询:select distinct replace(final_industry,' ','') from industryNorm

这是所产生的结果:

  1. 汽车,AerospaceandDefense,运输,旅行,IndustrialProducts,andInfrastructure
  2. 汽车,AerospaceandDefense,运输,旅行,IndustrialProducts,andInfrastructure
  3. 通信、媒体和技术
  4. ConsumerIndustriesandRetail
  5. ConsumerIndustriesandRetail
  6. 能源、医疗和加工工业
  7. FinancialServices
  8. FinancialServices

正如你所看到的,许多重复。看起来它们在结尾仍然有空间,但我不明白为什么,因为我运行了一个替换函数来消除它们。我还运行了一个替换程序,在任何空格的位置都放了一个\\,当我这样做的时候,后面的空格就不会出现了。为什么会这样呢?我能做什么?

有人能帮我解决这个问题吗?谢谢!

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2017-06-20 14:52:38

如果你认为这个问题是由于其他空格引起的,我有一个类似的问题,有人回答了。

代码语言:javascript
复制
select distinct replace(replace(replace(replace(
   final_industry
  ,char(9)/*tab*/,'')
  ,char(10)/*newline*/,'')
  ,char(13)/*carriage return*/,'')
  ,char(32)/*space*/,'')
from industryNorm
票数 0
EN

Stack Overflow用户

发布于 2017-06-20 14:50:20

尝试RTrim()LTrim(),而不是替换()。修剪()将处理其他字符,而不仅仅是' '

票数 1
EN

Stack Overflow用户

发布于 2017-06-20 14:58:09

您可能会在替换函数中遇到一个非常非常老的错误。

这看起来很愚蠢,这是因为它确实如此,但是尝试将多个替换放在:

代码语言:javascript
复制
replace(replace(final_industry,' ',''), ' ','')

在您的情况下,这可能没有帮助,但我曾经有过这样的情况:第一个替换没有真正正确地替换所有东西。

以下是关于为什么/如何发生这种情况的更多解释:https://www.xaprb.com/blog/2005/11/15/a-bug-in-microsoft-sql-servers-replace-function/

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44656280

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档