SQL的数据读取在VB界面的时候 要怎么去除在SQL带出来的空格啊?

SQL的数据读取在VB界面的时候 要怎么去除在SQL带出来的空格啊?,第1张

其实最好从根本上去除这个问题,为什么使用SQL语句会读出空格来,是否在保存数据的时候没有去除空格。你可以使用这几个函数试试:

trim(字符):去掉字符串当中的前后空格

Ltrim(字符串):去掉字符串当中的左侧空格

Rtrim(字符串):去掉字符串当中的右侧空格

例如:A=trim(" hello ")

结果:A=“hello"

例如:A=Ltrim(" hello ")

结果:A=“hello "

例如:A=Rtrim(" hello ")

结果:A=“ hello"

如果数据在A列,后面插入临时用的B列,

,B2输入

=SUBSTITUTE(A2," ","")

下拉

注意,公式里第一个引号中间输入1个空格(用空格键)

复制B列>右键>选择性粘贴>数值

删除A列,OK

哪个都无所谓,你只要看sql里查询出来的字符的样子,然后照样学样就可以

replace(str,str1,str2)

str是你查询出来的原始数据字符串,

str1是在str中要被替换的字符串,

str2是用来替换str1的字符串

1

如果你想去除列最前面或最后面的空格,用LTRIM或RTRIM函数

2

如果你想去除空格后面的所有字符,如

“1234

qq”

变为

“1234”,可以使用patindex或charindex函数

参考语句:update

set

字段

=

SUBSTRING(字段

,1,charindex('

',字段,1)

-

1

)

where

函数说明

如果是文本类型的,只能使用patindex,而且不能指定开始的位置,语法是PATINDEX('%查找的字符%',从那里查找)

如果是字符类型的话,可以用charindex,可以指定开始的位置,语法是charindex('查找的字符',从那里查找,起始位置)

trim:去掉特定字符,默认去前后的空格

select trim(' o r a cle ') from dual;

结果:o r a cle

截去特定字符

select trim('o' from 'o r a cle ') from dual;

结果: r a cle注意r前面有一个空格

oracle中可以用regexp_replace

select

regexp_replace(字段名,'正则表达式','替换目标')

from

正则表达式:可以用正则语法来写,比如用\s

,这个匹配比较多,包括回车换行等。如果你字段中有其他特殊字符的话,就不能用这个了。也可以直接用

半角空格,全角空格代替,'[半角空格全角空格]'

替换目标:如果你想删除的话,就用‘’就行了。

当然上面的写法,只是select

,没有改变表中的实际数据,如果要改表,请用update

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/11677441.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存